Rの文法
Rの記法について紹介
代入
オブジェクトに値を代入するには、<-
または=
を使う.
# xに10を代入
x <- 10
# yに20を代入
y = 20
# xとyを足した値をzに代入
z <- x+y
オブジェクトからの値の取り出し方
オブジェクトからの値の取り出しかたには、オブジェクトのクラスによって異なる.
- スカラー(ベクトルの長さが1のもの)のオブジェクトの場合、x自体が値を持つ.
x <- 10 x
- ベクトルのオブジェクトの場合、x[1]のように、カギ括弧内で取り出したい位置(インデックス)を指定して取り出す.
x <- c(1, 2, 3, 4, 5) #ベクトルを作成 x[1] # 1番目の要素を取り出す x[2] # 2番目の要素を取り出す x[3] # 3番目の要素を取り出す
- ベクトルに名前がついている時は、x[名前]と指定して値を取り出すことも可能.
names(x) <- c("a", "b", "c", "d", "e") # ベクトルに名前をつける x["a"] # 名前がaの要素を取り出す
- 行列・データフレームのオブジェクトの場合、x[1, 1]のように、カギ括弧内で取り出したい位置(インデックス)を指定して取り出す.
カギ括弧内の前の数字は行のインデックス、後ろの数字は列のインデックスを表す.x <- matrix(1:9, nrow=3, ncol=3) # 3x3の行列を作成 x[1, 1] # 1行1列目の要素を取り出す x[1, 2] # 1行2列目の要素を取り出す x[2, 3] # 2行3列目の要素を取り出す x[1, ] # 1行目の全ての要素を取り出す x[ , 2] # 2列目の全ての要素を取り出す
y <- data.frame(x=1:3, y=4:6) # データフレームを作成 y[1, 1] # 1行1列目の要素を取り出す y[1, 2] # 1行2列目の要素を取り出す y[1, ] # 1行目の全ての要素を取り出す y[ , 2] # 2列目の全ての要素を取り出す
- 行名、列名がついている場合は、x[“行名”, “列名”]と指定して値を取り出すことも可能.
rownames(x) <- c('A', 'B', 'C') colnames(x) <- c('D', 'E', 'F') x['A', 'D'] # 1行1列目の要素を取り出す