我有一个包含id
和name
列的文本文件,我正在尝试将其读入R中的数据框:
d = read.table("foobar.txt", sep="\t")
但由于某种原因,许多行被合并 - 例如,在我的数据框的第500行,我会看到类似
的内容row 500: 500 Bob\n501\tChris\n502\tGrace
[因此,如果我的原始文本文件有5000行,那么我的表格的尺寸最终只会是1000行和2列。]
我曾经有过这么多次。有谁知道问题是什么,或者如何解决它?
答案 0 :(得分:32)
从?read.table
:数据列的数量是通过查看前五行输入(或整个文件,如果它少于五行),或者从col.names的长度来确定的。指定并且更长。如果fill或blank.lines.skip为true,则可能会出错,因此如有必要,请指定col.names。
所以,也许你的数据文件不干净。更具体的将有助于数据导入:
d = read.table("foobar.txt",
sep="\t",
col.names=c("id", "name"),
fill=FALSE,
strip.white=TRUE)
将指定确切的列,fill=FALSE
将强制使用两列数据框。