【问题标题】:How to count nul values in R如何计算R中的空值
【发布时间】:2020-02-03 09:04:42
【问题描述】:

我想在 R 中处理文件之前对其进行检查。

由于软件崩溃,我的输入文件可能已损坏并包含 nul 值。所以我希望我的脚本在继续该过程之前查看数据。

如果我执行read.csv(..., skipNul = TRUE),则会跳过 nuls 并且脚本不会停止。但这很糟糕,因为我没有看到缺少数据。

如果我执行read.csv(..., skipNul = FALSE),无论如何都会跳过 nuls,我只会收到一条警告消息。

我想计算文件中的 nuls。但是我该怎么做呢?

我尝试更改编码,但打印数据帧时从未显示 nuls。

【问题讨论】:

  • 你能分享一个示例文件吗?
  • 你可以在这里找到一个例子:file
  • 对我不起作用。如果您使用dput() 将与您的数据集相关的前几行粘贴到您的问题中会更好。
  • 这行不通。问题是,您无法在数据集中看到 nul 值。所以转储到文件也无济于事。但您可以尝试通过以下方式读取文件:DF <- read.csv(file="Example.log", blank.lines.skip = TRUE, header = FALSE, skipNul = FALSE, encoding = "UTF-16", allowEscapes = TRUE)

标签: r read.csv


【解决方案1】:

我想,我在这里找到了解决方案: Removing nul characters

我可以通过DF <- readBin("Example.log", raw(), file.info("Example.log")$size)读取原始数据。

生成的向量包含所有 1 字节的 char 值。我只需要过滤 nuls 并打印长度:length(DF[DF == 0])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-23
    • 1970-01-01
    • 2020-10-15
    • 2018-06-16
    • 1970-01-01
    • 2016-03-05
    • 2012-06-14
    • 2018-09-01
    相关资源
    最近更新 更多