1

do.call関数を使用してリストをdata.frameに変換できます。

z=list(c(1:3),c(5:7),c(7:9))
x=as.data.frame(do.call(rbind,z))
names(x)=c("one","two","three")
x

##   one two three
## 1   1   2     3
## 2   5   6     7
## 3   7   8     9

もっと簡潔にしたいのですが、2つのステートメントを1つのステートメントにマージできますか?

x=as.data.frame(do.call(rbind,z))  
names(x)=c("one","two","three")
4

2 に答える 2

7

setNamesあなたが望むものです。でロードする必要があるstatsパッケージに含まれていますR

setNames(as.data.frame(do.call(rbind,z)), c('a','b','c'))

##   a b c
## 1 1 2 3
## 2 5 6 7
## 3 7 8 9
于 2012-08-29T23:44:52.160 に答える
3

別の方法はstructure()関数です。これは基本であり、より一般的です。

structure(as.data.frame(do.call(rbind,z)), names=c('a','b','c'))
于 2012-08-30T00:10:33.220 に答える