【问题标题】:Importing a .csv with headers that show up as first row of data导入带有显示为第一行数据的标题的 .csv
【发布时间】:2017-01-05 21:08:35
【问题描述】:

我正在将一个 csv 文件导入 R。我在这里阅读了一篇文章,上面说为了让 R 将第一行数据视为标题,我需要包含调用 header=TRUE

我正在使用 RStudio 的导入功能,右下角有一个代码预览部分。默认为:

library(readr)
existing_data <- read_csv("C:/Users/rruch/OneDrive/existing_data.csv")
View(existing_data)

我尝试将header=TRUE 放在以下位置:

  • read_csv(header=TRUE, "C:/Users...)
  • existing_data.csv", header=TRUE
  • 在 2/existing_data.csv") 之后

谁能指出我正确的方向?

【问题讨论】:

  • 复选框"First Row as Names"被标记,所以你应该没问题。

标签: r import header row


【解决方案1】:

您应该使用col_names 而不是header。试试这个:

library(readr)
existing_data <- read_csv("C:/Users/rruch/OneDrive/existing_data.csv", col_names = TRUE)

有两种不同的函数可以读取 csv 文件(实际上远不止两个):来自utils 包的read.csv 和来自readr 包的read_csv。第一个获得header 参数,第二个获得col_names

您也可以尝试data.table 包中的fread 函数。它可能是最快的。

祝你好运!

【讨论】:

    【解决方案2】:

    看起来有一个变量名被正确识别为变量名(请注意您的第一列)。我猜您的第一行 only 包含变量“现有产品列表”,而您的其他变量名称实际上包含在第二行中。在 Excel 或 LibreOffice Calc 中打开文件进行确认。

    如果确实是您列出的所有变量名称(包括“现有产品列表”)都在第一行,那么您和我在同一条船上。就我而言,第一行包含我的所有变量,但是它们同时显示为变量名称第一行观察结果。原来编码搞砸了(这也可能是你的问题),所以我的解决方案只是删除第一行。

    library(readr)
    mydat = read_csv("my-file-path-&-name.csv")
    mydat = mydat[-1, ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-24
      • 1970-01-01
      • 2017-09-21
      • 2020-01-01
      • 1970-01-01
      • 2023-03-29
      • 2021-06-09
      • 2014-08-13
      相关资源
      最近更新 更多