【问题标题】:Error while trying to read .data file in R尝试在 R 中读取 .data 文件时出错
【发布时间】:2016-06-29 22:04:53
【问题描述】:

我正在尝试使用 read.table 读取此位置的 car.data 文件 - https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data,如下所示。尝试了前面列出的各种解决方案,但没有奏效。我正在使用 Windows 8,R 版本 3.2.3。我可以将此文件保存为 txt 文件然后读取,但无法直接从 URL 读取 .data 文件,甚至使用 read.table 保存后也无法读取

t <- read.table(
    "https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data", 
    fileEncoding="UTF-16", 
    sep = ",", 
    header=F
)

这是我遇到的错误,导致一个空数据框,其中单个单元格带有“?”在里面:

警告信息:

1: In read.table("https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data", : 在输入连接'https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data'上发现无效输入

2: 在 read.table("https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data", : readTableHeader 在“https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data”上发现的最后一行不完整

请帮忙!

【问题讨论】:

    标签: r read.table


    【解决方案1】:

    当数据未存储在表中时,请勿使用read.table。该链接上的数据以逗号分隔的格式清楚地显示。请改用 RCurl 包并将数据读取为 CSV:

    library(RCurl)
    x <- getURL("https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data")
    y <- read.csv(text = x)
    

    现在y 包含您的数据。

    【讨论】:

    • read.csv 现在可以读取https,所以你不再需要RCurl 依赖
    • @EatPeanutButter,感谢您的回答,但它不起作用.. getURL 为我抛出了另一个错误:函数错误(类型,味精,asError = TRUE):SSL 证书问题:自签名证书证书链
    【解决方案2】:

    感谢cory,这是解决方案 - 直接使用 read.csv:

    x https://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data")

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-15
      • 1970-01-01
      • 2018-03-01
      • 2021-03-15
      • 2020-02-07
      • 1970-01-01
      相关资源
      最近更新 更多