我正在尝试将一个.csv文件读入R中,并在使用以下公式时:
pheasant<-read.table(file.choose(),header=TRUE,sep=",")
我收到这样的警告信息:
"incomplete final line found by readTableHeader on 'C:\Documents and Settings..."
有几件事我认为可能导致了这一警告,但不幸的是,我不知道足够的R来诊断自己的问题,所以我想我会张贴在这里,希望其他人可以为我诊断它!
如有任何帮助或建议,将不胜感激!
发布于 2017-05-04 01:16:05
这个问题很容易解决,因为最后一行必须是空的。
比如说,如果你的内容是
line 1,
line2
将其更改为
line 1,
line2
(empty line here)
今天,当我试图使用R读取JSON文件时,我遇到了这样的问题,方法是使用以下命令:
json_data<-fromJSON(paste(readLines("json01.json"), collapse=""))
我用我的上述方法来解决这个问题。
发布于 2011-05-13 05:06:14
是否确实选择了.csv文件而不是.xls文件?只有尝试在.xls文件中读取时,才能再现错误。如果我试图读取一个.csv文件或任何其他文本文件,就不可能重新创建您得到的错误。
> Data <- read.table("test.csv",header=T,sep=",")
> Data <- read.table("test.xlsx",header=T,sep=",")
Warning message:
In read.table("test.xlsx", header = T, sep = ",") :
incomplete final line found by readTableHeader on 'test.xlsx'
readTableHead
是给出错误的c-函数.它试图读取前n行(标准的前5行)来确定数据的类型。其余的数据是用scan()
读取的。所以问题是文件的格式。
查找的一种方法是将工作目录设置为文件所在的目录。这样,您就可以看到所读取文件的扩展名。我知道在Windows上它不是标准的,所以你可能相信它是csv,而不是csv。
接下来要做的事情是,在记事本或写字板(或其他编辑器)中打开文件,并检查格式是否与我的文件test.csv
等效。
Test1,Test2,Test3
1,1,1
2,2,2
3,3,3
4,4,
5,5,
,6,
此文件将为您提供以下数据:
> read.table(testfile,header=T,sep=",")
Test1 Test2 Test3
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 NA
5 5 5 NA
6 NA 6 NA
excel保存的csv格式用逗号分隔所有单元格。空细胞只是没有价值。read.table()
可以很容易地处理这个问题,并且能够很好地识别空单元。
发布于 2018-05-01 14:26:53
首先使用readLines()
(与warn = FALSE
一起)将文件读入字符向量。
之后,使用text =
选项将向量读入带有read.table()
的数据帧中。
pheasant <- read.table(
text = readLines(file.choose(), warn = FALSE),
header = TRUE,
sep = ","
)
https://stackoverflow.com/questions/5990654
复制