RStudio - R言語の基礎 #01、パルマーペンギンのデータを分析

Googleデータアナリティックスプロフェッショナルを受講しています。
今回は途中のコースを飛ばして、R言語・RStudioのパラシュート学習をして見ました。

https://www.coursera.org/programs/dentsu-xph6d?currentTab=CATALOG

## データ分析の基礎

Googleデータアナリティックスで学んだデータ分析の基礎を復習してみました。
Rと統計について学ぶ際はこれらの内容を踏まえた記事にしたいと思います。

### これまでに学習したこと
- データ分析の基礎
１、 データ分析の6段階（問いかけ、準備、処理、分析、共有、行動）
２、課題解決につながる思考（5回の問いかけ、ギャップ分析、データ主導の意思決定）

- データ分析に用いるツール
１、Excel、Googleスプレッドシート（表計算）
２、SQL、BigQuery（データベース）
３、PowerBI(視覚化、レポート)

- データ分析の手法
１、データクリーニング（Excel関数・SQLを使った処理）
２、視覚化(PowerBI・RStudioを使った分析)

## パルマーペンギンのデータを分析
R言語はデータ分析やデータクリーニングに便利な言語です。
R言語を使うには、デバイスもしくはサーバーにRStudioをインストールして統合開発環境(IDE)として用います。

https://posit.co

今回はプログラミングとR	言語の基礎について、R言語で簡単なデータ分析やクリーニング・視覚化をする方法を学んでみました。パルマーペンギンを研究したデータのインストールとggplotによる視覚化を行ってます。

```r
#まずはパッケージと視覚化に用いるggplot2をインストール
install.packages("palmerpenguins")
library("palmerpenguins")

install.packages("ggplot2")
library("ggplot2")
```

```r
#ペンギンデータをペインに表示する
View(penguin)
```
![R000.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/337578/71590f03-4591-a6b4-d1f4-71b8218af13e.png)
ペンギンデータは種類、出身島、くちばしの長さ・深さ、翼の長さ、体重、性別、観測年といったデータから成ります。

```r
#ペンギンデータの基礎統計量を表示する
summary(penguin)
```
![R000-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/337578/78939216-9b24-0cc6-1749-2d818ec9f9e2.png)
基礎統計量を表示すると、最大・最小値、平均と中央値、第一・第三四分位数、空データの数を表示することができます。

```r
#散布図を描く
ggplot(data=penguins, aes(x=flipper_length_mm, y=body_mass_g)) + geom_point()
```
![R001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/337578/9f92d26b-a1b2-80f2-947c-6312b6eef139.png)
散布図を描くには、ggplot2のメソッドを使います。
ggplotによる解析結果を見やすくするには、様々なメソッドを使えます。

```r
#散布図を描く際、ペンギンの種類ごとに点の種別・色を変える
ggplot(data=penguins, aes(x=flipper_length_mm, y=body_mass_g)) + geom_point(aes(shape=species, color=species))

#facet機能を使うと、ペンギンの種類ごとの散布図を描ける
ggplot(data=penguins, aes(x=flipper_length_mm, y=body_mass_g)) + geom_point(aes(shape=species, color=species))+facet_wrap(~species)
```

![R003.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/337578/27ce276a-f5a0-918c-52cf-c422cf936cb3.png)
![R004.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/337578/d5b36586-4d4d-7021-6f7a-51fd7b10a62a.png)

## 使用したコード集
```r
#まずはパッケージと視覚化に用いるggplot2をインストール
install.packages("palmerpenguins")
library("palmerpenguins")

install.packages("ggplot2")
library("ggplot2")

#ペンギンデータをペインに表示する
View(penguin)

#ペンギンデータの基礎統計量を表示する
summary(penguin)

#散布図を描く
ggplot(data=penguins, aes(x=flipper_length_mm, y=body_mass_g)) + geom_point()

#散布図を描く際、ペンギンの種類ごとに点の種別・色を変える
ggplot(data=penguins, aes(x=flipper_length_mm, y=body_mass_g)) + geom_point(aes(shape=species, color=species))

#facet機能を使うと、ペンギンの種類ごとの散布図を描ける
ggplot(data=penguins, aes(x=flipper_length_mm, y=body_mass_g)) + geom_point(aes(shape=species, color=species))+facet_wrap(~species)
```

## RStudio の真価が発揮されるとき
データが複数のカテゴリーやグループにまたがっている場合、ExcelやPythonでは分析の管理や傾向の可視化が難しくなります。
RStudio では基本的なコードを使って、特定の分析ステップを各グループに対して簡単に実行できます。複雑なデータの要約統計値の算出・ビジュアライゼーションに向いている言語です。

## R言語リンク集

The R Project for Statistical Computing
RProject のサイト。Rの関連ドキュメントとヘルプページ
https://www.r-project.org

Coding Club R Tutorials
R のコーディングチュートリアル
https://www.r-project.org

社会人のためのデータサイエンス演習
Rを使ったデータ分析の特別週がある
https://lms.gacco.org/courses/course-v1:gacco+ga063+2022_12/courseware

r/Rlanguage
R言語のRedditサーバー
https://www.reddit.com/r/Rlanguage/

R4DS オンライン学習コミュニティ
R の受講者やメンターが集まる Slack チャンネルを利用できる
https://www.rfordatasci.com

#rstats
TwitterのRユーザーのハッシュタグ
https://twitter.com/hashtag/rstats?lang=jp