【问题标题】:column names in 2nd row of csv file [duplicate]csv文件第二行中的列名[重复]
【发布时间】:2019-05-17 05:15:20
【问题描述】:

我有一个 csv 文件,其中列名上方有一个空白行。
是否可以在 R 中对此进行更正?

现在,我在运行 R 代码之前打开 csv 并删除空白行。但如果可以的话,我想避免这项工作。

删除空白行然后标记列的正确/最佳方法是什么。

我试过了:

 df <- read.csv("SourceFile/filename.csv", header= TRUE, row.names = 2)

但我收到此错误:

read.table 中的错误(文件 = 文件,标题 = 标题,sep = sep,quote = quote,: 列多于列名

【问题讨论】:

  • read.csv 应该有一个skip 选项
  • 如果该行完全空白,它将被自动跳过。 txt &lt;- "\n\none,two\n1,2"; read.csv(text=txt, header=TRUE) - blank.lines.skip = TRUE 是默认值。我怀疑这里还有其他问题,可能是字段中的引用字符。尝试将quote="" 也设置为参数。

标签: r csv


【解决方案1】:

readr 包中,read_csv 函数有一个skip 参数。 https://readr.tidyverse.org/reference/read_delim.html

如果您想更具侵略性,还有一个 skip_empty_rows 参数。

【讨论】:

  • read.csv 也有一个skip= 参数,默认情况下它也会跳过空行。
【解决方案2】:

对于您的情况,请尝试:

read.csv(...,skip=1)

希望这有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-30
    相关资源
    最近更新 更多