我正在尝试将大型CSV文件读入R.该文件位于https://github.com/AidData-WM/public_datasets/releases/download/v3.0/AidDataCore_ResearchRelease_Level1_v3.0.zip,READ ME表示编码为UTF-8,应该有1,561,039行和68列。我已经尝试了几种不同的方式来读取数据,但无法读取完整的数据集。我认为可能会出现一些问题,因为:(i)字符串中有不完整的引号,(ii)字符内部有逗号字符串和sep=","
(因此我无法使用quote=""
来处理引用问题),以及(iii)存在不常见的字符,例如箭头。
以下是我尝试阅读数据和产生警告的各种尝试:
aid <- read.csv("AidDataCoreFull_ResearchRelease_Level1_v3.0.csv"),header=T, encoding="UTF-8")
> dim(aid)
[1] 9960 68
警告讯息: 在scan(file = file,what = what,sep = sep,quote = quote,dec = dec,: 引用字符串中的EOF
aid <- read.table("AidDataCoreFull_ResearchRelease_Level1_v3.0.csv"),header=T,sep=",",encoding="UTF-8")
> dim(aid)
[1] 9960 68
警告讯息: 1:在扫描中(file = file,what = what,sep = sep,quote = quote,dec = dec,: 引用字符串中的EOF 2:在扫描中(file = file,what = what,sep = sep,quote = quote,dec = dec,: 读取的项目数不是列数的倍数
aid <- read.csv("AidDataCoreFull_ResearchRelease_Level1_v3.0.csv"),header=F,skip=1,quote="",encoding="UTF-8")
> dim(aid)
[1] 10956 72
这次没有警告消息,但是没有接近完整行读入的位置,现在列数太多了。
tx <- readLines("AidDataCoreFull_ResearchRelease_Level1_v3.0.csv",encoding="utf-8",skipNul=T)
> length(tx)
[1] 9961
警告讯息: 在readLines(“AidDataCoreFull_ResearchRelease_Level1_v3.0.csv”中,: 'AidDataCoreFull_ResearchRelease_Level1_v3.0.csv'找到不完整的最后一行
我找不到以完整CSV格式读取的命令组合,我无法在Excel中打开它以查看并尝试整理数据。任何帮助将不胜感激!