【发布时间】:2014-01-30 19:44:57
【问题描述】:
我有一个数据表,其中包含许多包含值的列。我有另一列定义了我需要选择哪些列的值。我很难找到一种方法来做到这一点。
这是一个简单的例子。
> d <- data.table(
value.1 = c("one", "uno", "1"),
value.2 = c("two", "dos", "2"),
name.of.col = c("value.1","value.2","value.1"))
> d
value.1 value.2 name.of.col
1: one two value.1
2: uno dos value.2
3: 1 2 value.1
我想添加一个列“value.of.col”,其中包含“name.of.col”指定的列的值。
> d
value.1 value.2 name.of.col value.of.col
1: one two value.1 one
2: uno dos value.2 dos
3: 1 2 value.1 1
【问题讨论】:
-
感谢到目前为止的回复。答案肯定有效,但非常占用内存。谁能想到在相当大的数据表上执行此操作的好方法?我正在使用的表是 700k 行、132 列和大约 700MB。
-
第二种方案更快吗?
标签: r data.table