ちょっと使えるRの小ネタ

データを読み込むとき、ヘッダーの数行が実験のメタデータだったりすると、そのまま読み込むと列ラベルがひどいことになる。
そのようなときに skip 引数で readline する行数を指定できる。
また、N列目を指定することでその列を行の名前にできる。

# M 行分のヘッダーを削除して、N列目の要素を行の名前にできる
read.table(file_name, skip=M, row.name=N)

 
こんな感じのリストがあって

a <- list(A=1, B=2, C=3)
$A
[1] 1

$B
[1] 2

$C
[1] 3

リストの中にリスト、ただし長さは一緒のオブジェクトがあるとする。

A <- list(a, a, a)
A <- rapply(A, function(x) x+rpois(1, 5), how="replace")

これを、長さが一緒なんだから rbind なり cbind なりして結合したいときに、

do.call(rbind.data.frame, A)

とすれば

   A B  C
2  8 7  8
21 8 5  8
3  4 7 10

となる。