【问题标题】:Arrange multiple column into a single column using R-program使用 R 程序将多列排列成单列
【发布时间】:2019-10-06 02:14:54
【问题描述】:

我的数据是这样的,有 180 列(列长不同),列的长度很长-

1828    79595   219479  90102   1009
5936    114882  57685   6621    80823
27102   160335  51599   118987  
8912            5910        
4012                        

如何像这样转换/排列这些multiple column into a single column-

1828
5936
27102
8912
4012
79595
114882
160335
219479
57685
51599
5910
90102
6621
118987
1009
80823

使用R-language,因为我的数据太长,转换为 1 列时无法放入 Excel 工作表

【问题讨论】:

  • 你的数据是什么格式的?如果是矩阵,请使用c() 更改为向量,然后您可以根据需要转换为具有 1 列的矩阵。

标签: r csv col


【解决方案1】:

这是一种解决方案,假设您的数据位于 data.frame 或 data.table 类型的对象中:

library(data.table)
dt <- data.table(matrix(rnorm(1000), ncol = 100))
melt(dt, measure.vars = 1:ncol(dt))
#>       variable        value
#>    1:       V1 -0.636795202
#>    2:       V1  0.726632131
#>    3:       V1 -1.657745472
#>    4:       V1 -0.011510918
#>    5:       V1  0.005966138
#>   ---                      
#>  996:     V100  0.698911628
#>  997:     V100 -0.612117248
#>  998:     V100 -0.738224511
#>  999:     V100  1.616901156
#> 1000:     V100 -1.673199333

reprex package (v0.2.1) 于 2019-05-19 创建

【讨论】:

  • 但我的数据不是矩阵形式,每列的大小不同
  • 如果你的数据是列表,可以使用unlist
  • @xrxrxrxxr - 您需要提供reproducible example,您将获得与您的用例更直接相关的答案。就目前而言,你在强迫人们对你的数据做出假设。
猜你喜欢
  • 2019-07-09
  • 1970-01-01
  • 2016-03-25
  • 1970-01-01
  • 1970-01-01
  • 2018-06-09
  • 1970-01-01
  • 1970-01-01
  • 2019-02-21
相关资源
最近更新 更多