1. 課題を見つける/仮説を立てる
2. 実験や観察をしてデータを集める
3. データを整理する
4. データを解析して仮説を検証する
- 実験や観察は研究の半分くらい!
- 残り半分はデータの整理&解析!
- 解析によっては宝石になるはずのデータも単なる石ころに…!
※資料作成は岩嵜航さん(東北大学)にご協力いただきました。
(左右キーで進みます!)
❌「ありまぁす!」
⭕「誰でも確実に再現できるプロトコルがこちらです」
統計解析と作図の機能が充実したプログラミング言語
head(iris)
できた人は・・・
x = 2 #xに2を代入 x #xは何か訊く
x = 2 #xに2を代入 x #xってなんだっけ?
## [1] 2
x = 2 #xに2を代入 x #xってなんだっけ?
## [1] 2
y = 5 #yに5を代入 y #yってなんだっけ?
x = 2 #xに2を代入 x #xってなんだっけ?
## [1] 2
y = 5 #yに5を代入 y #yってなんだっけ?
## [1] 5
x + y #xとyを足す
x = 2 #xに2を代入 x #xってなんだっけ?
## [1] 2
y = 5 #yに5を代入 y #yってなんだっけ?
## [1] 5
x + y #xとyを足す
## [1] 7
x * y
## [1] 10
x / y
## [1] 0.4
class(x) #xはどのclass?
## [1] "numeric"
is.numeric(x) #xはnumeric(数値)?
## [1] TRUE
is.character(x) #xは文字列(character)?
## [1] FALSE
z = as.character(x) #x(= 2)を文字列(character)としてzに入れて!
class(z) #zはどのclass?
## [1] "character"
z = as.numeric(z) #zを数値としてzに入れて!(自動的に上書きになる) class(z) #zはどのclass?
## [1] "numeric"
x = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) #xに数値を代入 x * 3 #xに3をかける
## [1] 3 6 9 12 15 18 21 24 27 30
sqrt(x) #xを平方する
## [1] 1.000000 1.414214 1.732051 2.000000 2.236068 2.449490 2.645751 2.828427 ## [9] 3.000000 3.162278
y = 1:10 #1から10までの整数からなるベクトル y #yは何か訊く
## [1] 1 2 3 4 5 6 7 8 9 10
x < 5 #5よりも小さい?(こういう訊き方もできます)
## [1] TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE
z = -5:2 z
## [1] -5 -4 -3 -2 -1 0 1 2
x*y
## [1] 1 4 9 16 25 36 49 64 81 100
x*z #要素の数が一致しないためにエラーになる
## Warning in x * z: 長いオブジェクトの長さが短いオブジェクトの長さの倍数になってい ## ません
## [1] -5 -8 -9 -8 -5 0 7 16 -45 -40
x = 1:10 #1から10までの整数からなるベクトル y = -4:5 #-4から5までの整数からなるベクトル q = c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j") #文字10個 theDF = data.frame(x, y, q) #theDFという名前のデータフレームにまとめる theDF #theDFの中身を見せて
## x y q ## 1 1 -4 a ## 2 2 -3 b ## 3 3 -2 c ## 4 4 -1 d ## 5 5 0 e ## 6 6 1 f ## 7 7 2 g ## 8 8 3 h ## 9 9 4 i ## 10 10 5 j
theDF = data.frame(First = x, Second = y, Moji = q) theDF #theDFの中身を見せて
## First Second Moji ## 1 1 -4 a ## 2 2 -3 b ## 3 3 -2 c ## 4 4 -1 d ## 5 5 0 e ## 6 6 1 f ## 7 7 2 g ## 8 8 3 h ## 9 9 4 i ## 10 10 5 j
nrow(theDF) #theDFの行数は?
## [1] 10
ncol(theDF) #theDFの列数は?
## [1] 3
head(theDF) #最初の数行を見る。データの確認によく使います!覚えてね!
## First Second Moji ## 1 1 -4 a ## 2 2 -3 b ## 3 3 -2 c ## 4 4 -1 d ## 5 5 0 e ## 6 6 1 f
## bio logy ## 1 1 x ## 2 3 y ## 3 5 z
a = c(1, 3, 5) b = c("x", "y", "z") theDF2 = data.frame(bio = a, logy = b) head(theDF2)
bio = c(1, 3, 5) logy = c("x", "y", "z") theDF2 = data.frame(bio, logy) head(theDF2)
## bio logy ## 1 1 x ## 2 3 y ## 3 5 z
theDF$Moji # theDFのMoji列
## [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"
theDF[3, 2] # theDFの3行目2列目
## [1] -2
theDF[3, 2:3] # theDFの3行目2~3列目
## Second Moji ## 3 -2 c
theDF[, 3] # theDFの3列目
## [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"
theDF[2, ] # theDFの2行目
## First Second Moji ## 2 2 -3 b
theDF2$bio # theDF2のbio列
## [1] 1 3 5
theDF2[2, ] # theDF2の2行目
## bio logy ## 2 3 y
theDF2[, 2] # theDF2の2列目
## [1] "x" "y" "z"
install.packages("tidyverse") #インストールは最初の1回でOK library(tidyverse) #読み込みはRを起動するたびに必要
install.packages("tidyverse") #インストールは最初の1回でOK library(tidyverse) #読み込みはRを起動するたびに必要
install.packages("tidyverse") #インストールは最初の1回でOK library(tidyverse) #読み込みはRを起動するたびに必要