如何将所有行组合成一行?

时间:2016-07-15 02:35:40

标签: r matrix dataframe

我有一个包含100行和10列的数据帧,我想知道如何将所有100行合并为一行?感谢。

mydata=seq(1,1000)
mydata=as.data.frame(matrix(mydata,nrow = 100,ncol = 10,byrow=T))

the result should be like this:(just a single row)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ……

2 个答案:

答案 0 :(得分:3)

矩阵是按列索引的,所以我猜你可能只需要转置数据,然后从中构建一个新的矩阵:

matrix(t(as.matrix(mydata)), nrow = 1)

或者您可以在转置后将其转换为矢量,具体取决于您的需要:

as.vector(t(as.matrix(mydata)))

答案 1 :(得分:1)

我们可以获取transpose并连接到vector。请注意,transpose会转换为matrix,而无需致电as.matrix

as.vector(t(mydata))

或者我们可以在将行拆分成列表后使用unlist。

unlist(lapply(seq_len(nrow(mydata)), function(i) mydata[i,]))