通过将空白单元格替换为NA或将其更改为“”,将因子变量转换为数字变量。

时间:2019-12-27 13:33:16

标签: r dataset missing-data

  1. 我想通过以下代码将一些因子变量转换为数值变量:

    df$col <- as.numeric(df$col)

  1. 我的数据集中的缺失值没有用点(即“。”)表示。相反,它们是空白单元格。

  2. 因此,以上代码为我的数据集中的每个空白单元格分配了一个数字(即“ 1”)。

  3. 我的问题是如何通过将空白单元格替换为NA或将其更改为“。”来将因子变量转换为数值变量。

非常感谢。

1 个答案:

答案 0 :(得分:1)

解决此问题的正确方法是对缺失值使用NA。 为了将因子转换为数值,您必须首先强制转换为字符。但是首先,用NA替换空白单元格。

x <- factor(c("1", ""))
x[x == ""] <- NA
as.numeric(as.character(x))
[1]  1 NA