r - 按列和引用绑定(bind) data.tables 列表

标签 r data.table

假设我有以下列表:

X = list(data.table(1:2,3:4,5:6), 
         data.table(letters[1:2], letters[3:4]))

我想将列表中的元素按列绑定(bind)到单个 data.table 中。
输出将与产生的相同
do.call(cbind, X)

但是,由于我的原始列表和包含的数据表非常大,如果我可以通过引用来执行此操作会更好,而不是使用 cbind() 复制整个对象。 .有没有办法做到这一点?像 rbindlist()相当于按列绑定(bind),我已经看到这被标记为待办事项......

如果这个简单的问题已经在其他地方得到回答,我很抱歉,我错过了答案。

最佳答案

下面的呢?

# check.names = TRUE forces unique names on the output
setDT(
  unlist(X, recursive = FALSE),
  check.names = TRUE
)[]
#    V1 V2 V3 V4 V5
# 1:  1  3  5  a  c
# 2:  2  4  6  b  d

关于r - 按列和引用绑定(bind) data.tables 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48333523/

相关文章:

python - 创建一个基于 Python 中的另一列递增的列

r - 展开计数矩阵

r - 无法使用 r 中的 {gtsummary} 包编织为 pdf

r - 加速大型数据帧中的 3 列 R 搜索

r - 在带时间戳的事务的 data.table 中使用 zoo 的 rollsum

r - 聚合data.table中的多个列

r - 使用R如何根据字符分隔字符串

R 非常长向量的查找时间

r - Tidymodels - 使用工作流/配方获取训练数据的预测和指标

r - 使用 data.table (R 3.1.1) 进行字符串分组(聚合)