将多列的行合并为一个(行)R

问题描述 投票:2回答:2

我有这样的数据,并希望将它们合并为一行。当然,我可以做一个for循环,但这不是优雅和高效。我目前的数据:

0.063456491   0.004457746    0.013450942     0.023948062     0.02247313
0.003147881  -0.018681539   -0.009495686    -0.008677241     0.013863377
0.083954841   0.100283809    0.061790913    -0.004592628    -0.052269582
-0.021375194  -0.041536406  -0.044538945     0.023639958     0.037451282

预期产量:

0.063456491 0.004457746 0.013450942 0.023948062 0.02247313  0.003147881 -0.018681539    -0.009495686    -0.008677241    0.013863377 0.083954841 0.100283809 …

非常感谢,Phuong

r merge plyr
2个回答
0
投票

如果您的所有数据都是数字,并且您希望按行排序,则可以执行此操作

data.frame(t(as.numeric(t(df))))

#          X1          X2         X3         X4         X5          X6 ......
#1 0.06345649 0.004457746 0.01345094 0.02394806 0.02247313 0.003147881 ......

或者更普遍的as.vector方法也可行

data.frame(t(as.vector(t(df))))

1
投票

使用函数unlist将all合并为一行

df <- data.frame(v1 = c(0.0000,0.1111,0.2222), v2 = c(1.11111,1.22222,1.33333))
 print(df)
      v1      v2
1 0.0000 1.11111
2 0.1111 1.22222
3 0.2222 1.33333
> df <- unlist (df, use.names = F)
> print(df)
 0.00000 0.11110 0.22220 1.11111 1.22222 1.33333
© www.soinside.com 2019 - 2024. All rights reserved.