我有两个数据框。第一个是查找数据框,其中包含许多变量。示例:
Lookup <- data.frame(A = 1:7,B = 8:14)
A B
1 1 8
2 2 9
3 3 10
4 4 11
5 5 12
6 6 13
7 7 14
第二个包含模型的输出,其中两列引用查找数据帧的索引。例子
Model <- data.frame(Column = c(2,2), Row = c(7,4))
Column Row
1 2 7
2 2 4
作为参考,我希望基于查找数据帧的索引在模型数据帧上再添加第三列。示例:
Column Row Lookup
1 2 7 14
2 2 4 11
我打算在查询列中添加以下内容:
Model$Lookup <- Lookup[Model$Row,Model$Column]
但是,在我运行此代码的95%的时间内,向模型数据框中添加的列比我预期的要多得多。我怀疑我要在模型数据框中添加与数据行一样多的列-它们包含的数据来自Lookup数据框中,但顺序混乱。
另外5%的时间我只获得一栏,但50%的答案是正确的。其余的数据似乎是一些正确答案的副本。
这可能是基本的,但是任何人的帮助或想法都将不胜感激!
答案 0 :(得分:1)
我们可以对matrix
使用行/列索引
Model$Lookup <- Lookup[as.matrix(Model[2:1])]