将文件加载到R中时的行数不同

时间:2018-03-09 19:35:04

标签: r

我有一个.txt文件,其中一列包含1040行(包括标题)。但是,当使用read.table()命令将其加载到R中时,它显示1044行(包括标题)。

该文件的片段看起来像

L*H
no
H*L
no
no
no
H*L
no

这可能是R的问题吗?

在Excel中打开时,它也不会显示任何错误。

修改

问题是R读取L + H*之类的行作为三个分隔的行L + H*

我用过

table <- read.table(file.choose(), header=T, encoding="UTF-8", quote="\n")

2 个答案:

答案 0 :(得分:2)

您可以尝试使用readLines()来查看文件中有多少行。并随意使用read.csv()再次导入它以查看它获得预期的返回。有时,由于额外的报价,额外的回报以及可能的其他一些事情,文件可能会被区别对待。

可能的导入步骤:

  1. 使用文本编辑器或readLines()查看数据以找出分隔符和文件类型
  2. 确定导入方法(键入read并按Tab键,您将看到导入的导入功能。还可以查看读取器。)
  3. 自定义你的论点。例如,如果您有一个标题,或者如果您想跳过前n行。
  4. 使用View(head(数据))或View(tail(data))在R中再次查看数据。并确定是否需要重复步骤2,3,4

答案 1 :(得分:1)

根据您提供的数据,尝试使用sep = "\n"。通过使用sep = "\n",我们确保将每一行读取为单个列值。此外,根本不需要使用quote。您的示例数据中没有header,因此我也会删除该参数。

所有这一切,下面的代码应该完成工作。

table <- read.table(file.choose(), sep = "\n")