【发布时间】:2018-04-10 01:43:19
【问题描述】:
我正在尝试将每列中每个国家/地区的每个缩写的值替换为其实际名称(即“USA”到“United States”)。数据框超过 10,000 行。我尝试了很多方法,包括下面的代码,仍然无法更新值。我也用 %in% 尝试了同样的语句。
starbucks_data = read.csv("starbucksdata.csv", header = TRUE)
starbucks_data1 = starbucks_data[!(is.na(starbucks_data)),]
new_starbucks_data = starbucks_data1[,c("Brand","City", "Country")]
new = data.frame(new_starbucks_data, stringsAsFactors = FALSE)
new$Country[new$Country == "AD"] <- "Andorra"
new
这就是上面方法的样子。我收到错误“无效因子级别,NA 生成”,但我认为 stringsAsFactors = FALSE 可以解决该问题。任何帮助,将不胜感激。
【问题讨论】:
-
您的国家/地区缩写可能被编码为因素。首先将您的缩写转换为字符或将您的
read.csv行更改为read.csv("starbucksdata.csv", header = TRUE, stringsAsFactors = FALSE) -
谢谢你,成功了。
标签: r