【问题标题】:Issues importing a csv in R在 R 中导入 csv 的问题
【发布时间】:2019-04-29 20:08:39
【问题描述】:

我正在尝试自学 R(刚刚开始)。 我决定导入 2 个 csv 文件来练习它们的连接。

一个文件导入正常,另一个出现以下错误:

这里是csv文件链接:

https://data.world/jonathankkizer/occupation-computerization

我使用了以下语句

occupationforjoin<-read.table("C:/Users/Admin/Desktop/-=Data
Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv",
header=TRUE, sep=",")

警告信息: 1:在 read.table("C:/Users/Admin/Desktop/-=Data Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv", : 第 1 行似乎包含嵌入的空值 2:在 read.table("C:/Users/Admin/Desktop/-=Data Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv", : 第 2 行似乎包含嵌入的空值 3:在 read.table("C:/Users/Admin/Desktop/-=Data Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv", : 第 3 行似乎包含嵌入的空值 4:在 read.table("C:/Users/Admin/Desktop/-=Data Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv", : 第 4 行似乎包含嵌入的空值 5:在 read.table("C:/Users/Admin/Desktop/-=Data Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv", : 第 5 行似乎包含嵌入的空值 6: 在 scan(file = file, what = what, sep = sep, quote = quote, dec = dec, : 引号内的 EOF 7:在 scan(file = file, what = what, sep = sep, quote = quote, dec = dec, : 在输入中找到嵌入的 nul(s)

我在 StackOverflow 上发现可能是编码问题,所以我使用了建议的解决方案并执行了语句

occupationforjoin<-read.table("C:/Users/Admin/Desktop/-=Data
Science=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv",
header=TRUE, sep=",", fileEncoding="UTF-16LE")

它给了我一个不同的错误信息:

read.table 中的错误(“C:/Users/Admin/Desktop/-=Data 科学=-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv", : 列多于列名

我也尝试使用 read.csv 函数,但无济于事。

如何解决此问题并成功导入数据集?我在网上找到的所有解决方案(例如,使用“skipNul = TRUE”、“comment.char=""” 参数)都没有帮助。

更新: 如果您不想从数据世界下载 csv 文件,这里是数据集的粘贴: https://pastebin.com/SPEtWT6f

【问题讨论】:

  • cols 多于 tablenamses 通常意味着有一个额外的逗号浮动,使它看起来像 1 列实际上是 2。你能检查一下吗?
  • 除了指向实际 csv 文件的链接之外,我还添加了一个粘贴 bin 的链接。我找不到任何流氓逗号,但我实际上刚刚开始学习 R,可能会遗漏一些东西。可以这么说,我正处于 R 的“Hello world”阶段。请您看一下好吗?
  • 分隔符不是逗号,所以将其保存为 txt 文件并使用:read.csv("document.txt", header=T, sep="\t") 我还必须用制表符缩进第一列标题(这是删除符)
  • 警告消息:1:在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 1 行似乎包含嵌入的空值 2: 在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 2 行似乎包含嵌入的空值 3: 在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 3 行出现包含嵌入的空值 4:在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 4 行似乎包含嵌入的空值
  • 5: 在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 5 行似乎包含嵌入的空值 6: 在 scan(file = file, what = what, sep = sep, quote = quote, dec = dec, : 在输入中找到嵌入的 nul(s)

标签: r csv dataset read.table


【解决方案1】:

我终于找到了解决办法! 我快疯了;连我的导师都不知道怎么解决!

此语句有效:

o<-read.csv("C:/Users/Admin/Desktop/-=Data Science=-/11-27-2018/Occ.txt", header=T, sep="\t", fileEncoding="UTF-16LE")

就像我在最初的问题中所说:我尝试使用 fileEncoding="UTF-16LE" 并没有帮助。提出问题后,我尝试使用 sep="\t",但没有帮助。但是使用两个就可以了!

【讨论】:

  • 帮助很大!在找到这个答案之前,我已经被这个问题困住了 20 分钟,并浏览了一堆答案。成就了我的一天。 :)
【解决方案2】:

使用 dataframe = read.csv("name_of_file.csv")

dataframe = read.csv(file.choose()).

希望这会奏效。

【讨论】:

  • 没用。以下是错误消息: ************************* dataframe = read.csv("C:/Users/Admin/Desktop/-=Data Science =-/11-27-2018/jonathankkizer-occupation-computerization/OccComp.csv") 警告消息:1:在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 1 行出现包含嵌入的空值 2:在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 2 行似乎包含嵌入的空值 3: 在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 3 行似乎包含嵌入的空值 ...
  • 4: 在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 4 行似乎包含嵌入的空值 5: 在 read.table(file = file, header = header, sep = sep, quote = quote, : 第 5 行似乎包含嵌入的空值 6: 在 scan(file = file, what = what, sep = sep, quote = quote, dec = dec, : Embedded nul(s ) 在输入中找到
  • 结果数据框是垃圾——1个没有数据的变量:****************************** ***** 1 不适用 2 不适用 3 不适用 4 不适用 5 不适用 6 不适用 7 不适用 8 不适用 9 不适用 10 不适用 11 不适用 12 不适用 ...
【解决方案3】:

尝试使用 readr 包中的 read_csv() 函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-12
    • 1970-01-01
    • 2014-10-17
    • 2011-09-08
    • 2014-03-22
    • 1970-01-01
    相关资源
    最近更新 更多