2012年6月4日月曜日

Rで表をつくり、カラム名をつけ、タブ区切り(.txt)やcsv(.csv)として保存する


Rでテキトーな表を作る
data.A <- matrix(round(rnorm(21),digits=3),ncol=3)


rnorm: 乱数発生
round: 丸め処理(digits: 小数点以下の桁数)
matrix: リストから行列をつくる(ncol: カラムの数)


> data.A
       [,1]   [,2]   [,3]
[1,] -1.220 -0.321 -0.585
[2,]  1.584 -1.410 -0.378
[3,] -0.305  1.061 -0.392
[4,] -1.344  0.814  0.974
[5,] -0.798  0.139  0.742
[6,]  0.688 -1.462 -0.149
[7,]  0.023  0.342  2.005


カラム名をつける
colnames(data.A) <- c("name1","name2","name3")


> data.A
      name1  name2  name3
[1,] -1.220 -0.321 -0.585
[2,]  1.584 -1.410 -0.378
[3,] -0.305  1.061 -0.392
[4,] -1.344  0.814  0.974
[5,] -0.798  0.139  0.742
[6,]  0.688 -1.462 -0.149
[7,]  0.023  0.342  2.005


タブ区切りファイルとして保存するなら、
write.table(data.A,file="dataA.txt",sep="\t",col.names=T,row.names=F,quote=F)


csvとして保存するなら、
write.table(data.A,file="dataA.csv",sep=",",col.names=T,row.names=F,quote=F)


dataA.txtをエディタで開くと、


name1 name2 name3
-1.22 -0.321 -0.585
1.584 -1.41 -0.378
-0.305 1.061 -0.392
-1.344 0.814 0.974
-0.798 0.139 0.742
0.688 -1.462 -0.149
0.023 0.342 2.005


dataA.csvをエディタで開くと、


name1,name2,name3
-1.22,-0.321,-0.585
1.584,-1.41,-0.378
-0.305,1.061,-0.392
-1.344,0.814,0.974
-0.798,0.139,0.742
0.688,-1.462,-0.149
0.023,0.342,2.005

0 件のコメント:

コメントを投稿