【发布时间】:2016-02-07 17:25:04
【问题描述】:
我需要帮助更改/重命名 R 中数据框列中的属性。我可以非常接近我需要的内容,但我无法解决我的“解决方案”更改数据的方式。
这是一个虚拟数据框:
cols <- c("green", "green", "red", "blue", "black", "blue")
num <- c(1, 1, 2, 3, 4, 3)
df <- data.frame(cols, num)
df$cols <- as.character(df$cols)
> df
cols num
1 green 1
2 green 1
3 red 2
4 blue 3
5 black 4
6 blue 3
假设我的数据中有一个错误,我的所有“绿色”属性都必须是“紫色”。这是我在 GIS StackExchange 上针对类似问题所建议的代码:
df[df$cols == "green", ] <- "purple"
> df
cols num
1 purple purple
2 purple purple
3 red 2
4 blue 3
5 black 4
6 blue 3
如您所见,它确实将我的绿色属性更改为紫色……但也更改了其对应的数字列。使用我的真实数据框,我有许多其他必要的列不能像这样更改。那么如何在不影响其他列的情况下更改列中的属性名称?
【问题讨论】:
标签: r attributes dataframe