【发布时间】:2015-12-09 23:49:00
【问题描述】:
我有一个数据集。在许多不同的文件操作之前,许多单元格是“NA”
在操纵之后,无论出于何种原因,它们都变得纯粹是空的。因此,需要明确的是,以前在 excel 中为 NA 的 SAME 单元格现在完全显示为空白。没什么大不了的,对吧?
好吧,当我将数据读入 R 时,我得到...
[1] "" "" "6.4019975396e+17"
[4] "" "" ""
[7] "" "" "6.40275087015e+17"
[10] "6.4062774821e+17" "" "6.40602341e+17"
[13] "" "" "6.40360673735e+17"
[16] "6.40326194081e+17" "6.40326465381e+17" "6.40322363352e+17"
对我来说仍然很好,除非我跑步时
is.na(data_frame$column_name)
我全错了。每一个。我是否误解了 is.na 的工作原理?
编辑 - 这有点含糊。当然,我误解了它是如何工作的。你能解释一下为什么一个空单元格不能算作 NA 单元格吗?是否有一个快速修复可以应用于数据框以制作任何“”或为了 R 将 CSV 中的空白单元格转换为 NA 的内容?
【问题讨论】:
-
你是如何读取数据的?
-
另外,它们都是字符,不是数字。
-
我使用 read.csv(file_name, colClasses="character") 读取数据。再次澄清,在 Excel 中,单元格是空白的。它们以前是字母 NA,但在对各种文件中的数据进行了多次混洗后,它们现在是空白的。如果我能让 R 使用它,这对我来说很好。
-
试试
read.csv(file_name, na.strings = c("", "NA"))。不知道为什么选择字符列,但无论哪种方式na.strings参数都会产生NA值 -
这个 read.csv(file_name, na.strings = c("", "NA")) 方法效果很好。现在达到了预期的效果。非常感谢,先生。
标签: r excel missing-data