我有一个数据框glob如图所示
a b c Index Def
3 4 "good" 1 ANGLO
1 3 "great" 2 ORTHO
4 1 "average" 3 TEEN
2 3 "ok" 4 SPLEEN
索引是索引,我想将列a和b内容替换为位于相应索引的备用单元格中的Def的内容。我希望得到一个结果数据框
TEEN SPLEEN "good"
ANGLO TEEN "great"
SPLEEN ANGLO "average"
ORTHO TEEN "ok"
如果您可以使用1)for循环2)apply
提供代码将非常有用答案 0 :(得分:2)
这是你想要的解决方案吗?
df$a <- df$Def[df$Index[df$a]]
df$b <- df$Def[df$Index[df$b]]
df
a b c Index Def
1 TEEN SPLEEN good 1 ANGLO
2 ANGLO TEEN great 2 ORTHO
3 SPLEEN ANGLO average 3 TEEN
4 ORTHO TEEN ok 4 SPLEEN
您可以使用以下方法删除最后两列:
df <- df[, c('a', 'b', 'c')]
df
a b c
1 TEEN SPLEEN good
2 ANGLO TEEN great
3 SPLEEN ANGLO average
4 ORTHO TEEN ok