我正在尝试将一个数据框的元素与另一个对应的元素映射/替换。让我举一个例子。
我有这个数据框:
rbind(c("a","b","c"),c("b","a","c"),c("c","b","a"))
[,1] [,2] [,3]
[1,] "a" "b" "c"
[2,] "b" "a" "c"
[3,] "c" "b" "a"
和这个:
rbind(c("a",1),c("b",2),c("c",3))
[,1] [,2]
[1,] "a" "1"
[2,] "b" "2"
[3,] "c" "3"
我怎么能用1替换所有a,用2替换所有b,以及用3替换所有c。要获得一个看起来像这样的最终数据帧。
1 2 3
2 1 3
3 2 1
另外,请了解我正在使用更大的数据集进行此操作。我似乎找不到正确的方法来做到这一点。
先感谢您!
创建命名向量将更有意义。然后,您可以使用“ [”函数的索引功能:
a <- rbind(c("a","b","c"),c("b","a","c"),c("c","b","a"))
b <- c("a"=1,"b"=2, "c"=3)
> b
a b c
1 2 3
> a[] <- b[a]
> a
[,1] [,2] [,3]
[1,] "1" "2" "3"
[2,] "2" "1" "3"
[3,] "3" "2" "1"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句