为什么这种简单的方法来替换R中数据框中的条目不起作用?

时间:2014-05-03 04:04:21

标签: r replace dataframe

我肯定在这里遗漏了一些东西。我正在阅读this documentation

现在,如果我有任何旧矢量:

x <- letters

我可以这样做:

x[5] <- "test"

......以及字母&#34; e&#34;在向量x中将被字符串&#34; test&#34;替换。到目前为止一切顺利,但如果我制作数据框:

df <- data.frame(col1 = letters, col2 = letters)

那为什么我会收到错误:

 df[5,1] <- "test"

 df$col1[5] <- "test"

必须有一种非常简单的方法来进入数据框并只更改一个值。

错误是&#34;无效因子级别。&#34;所以我认为理想情况是以某种方式告诉R我希望它不要将DF中的相关列视为因子变量。

1 个答案:

答案 0 :(得分:6)

stringsAsFactors参数用于data.frame

df <- data.frame(col1 = letters, col2 = letters, stringsAsFactors=FALSE)

这将为您提供模式character的列。

?data.frame显示了其选项。