修改的
我正在尝试命名列并重命名数据集列中的所有项目:
dataSet <- read.csv(url) %>%
rename("newColumn1" = V1) %>%
mutate(newColumn1 = recode(newColumn1, "oldEntryX" = "newEntryX") %>%
select(dataSet, newColumn1)
我收到了这个错误:
Error in recode(newColumn1, oldEntryX = "newEntryX" :
object 'newColumn1' not found
我错过了什么?
代码通过重命名功能正确运行并正确显示重命名的列,但是当我包含mutate时,它会抛出错误。
我分享真实代码没有问题,但想把它推广给人群。
来源信息来自https://archive.ics.uci.edu/ml/machine-learning-databases/mushroom/agaricus-lepiota.data
答案 0 :(得分:1)
在mutate
步骤中,您不需要lhs
=
上的列名称引用。此外,还有一些案例不匹配
假设数据集读取正确,我们可以
df1 %>%
rename(newColumn1 = V1, newColumn2 = V2) %>%
mutate(newColumn1 = recode(newColumn1, oldEntryX = "newEntryX"),
newColumn2 = recode(newColumn2, oldEntryY = "newEntryY"))
根据OP的代码,也没有结束引用"newColumn1
set.seed(24)
df1 <- data.frame(V1 = sample(c("oldEntryX", "x", "y"), 10, replace = TRUE),
V2 = sample(c("oldEntryY", "x", "y"), 10, replace = TRUE), stringsAsFactors= FALSE)
答案 1 :(得分:0)
你可以用一些简单的R编程代码来做到这一点: 如何阅读csv文件 语法: - `read.csv(&#34; filename.csv&#34;) 通过使用此命令,第一行将用作标题。要改善这个错误,应该写
data <- read.csv("datafile.csv", header=FALSE)
如何重命名标题/列名:
names(data) <- c("Column1", "Column2", "Column3")
现在您的标题已被Column1,Column2和Column3替换
现在要更改Column1数据,您可以按照步骤
data$Column1 <- c(write down set of values with which you want to replace)
查看输出类型
data