我有以下示例数据框:
> df <- data.frame(v=c("a", "a", "b", "b", "c", "d", "d"))
> df
v
1 a
2 a
3 b
4 b
5 c
6 d
7 d
我想根据一些任意映射将这些值分类在单独的列中。例如:
- a -> x
- b -> x
- c -> y
- d -> y
所以之后,我会有以下内容:
v cat
1 a x
2 a x
3 b x
4 b x
5 c y
6 d y
7 d y
谢谢
最佳答案
这是一个选项:
使用映射创建命名向量:
x <- c(a = "x", b = "x", c = "y", d = "y")
然后使用命名向量添加新列:
df$cat <- x[df$v]
df
# v cat
#1 a x
#2 a x
#3 b x
#4 b x
#5 c y
#6 d y
#7 d y
关于r - 对 data.frame 中的值进行分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28683391/