【发布时间】:2017-06-16 19:18:35
【问题描述】:
我有一个 .txt 数据集,其中前 12 行是文本,后跟 2 个空白行,然后是数据
DATE HEIGHT INPUT OUTPUT TESTMEASURE
01/01/1933 NO RECORD NO RECORD MISSING MISSING
01/02/1933 NO RECORD NO RECORD MISSING MISSING
但是当我做一个
dat <- fread('data.txt'),
它跳过 15 行,并使用第一行数据作为导入数据集的列名。它会忽略标题行。
01/01/1933 NO RECORD NO RECORD MISSING MISSING
skip 参数根本不影响我导入的内容。如何提及需要用作列名的行号。或者,我可以重命名列名,但不应忽略第一行数据。
诊断
Input contains no \n. Taking this to be a filename to open
File opened, filesize is 0.001319 GB.
Memory mapping ... ok
Detected eol as \r\n (CRLF) in that order, the Windows standard.
Positioned on line 1 after skip or autostart
This line is the autostart and not blank so searching up for the last non-blank ... line 1
Detecting sep ... '\t'
Detected 5 columns. Longest stretch was from line 15 to line 30
Starting data input on line 15 (either column names or first row of data). First 10 characters: 01/01/1933
The line before starting line 15 is non-empty and will be ignored (it has too few or too many items to be column names or data): DATE HEIGHT INPUT OUTPUT TESTMEASURE the fields on line 15 are character fields. Treating as the column names.
【问题讨论】:
-
应该是
dat <- fread('data.txt', skip=15)? -
@ChiPak 我需要跳过 12+2=14 行。但任何低于 15 的数据都不会受到影响。
-
无论我跳过什么,导入的第一行仍然是 01/02/1933。
-
我正在处理你的帖子,上面写着
dat <- fread('data.txt'),。也就是说,这是您正在使用的命令吗? -
也许它正在查看您的数据并说,“嘿,每行有 7 个变量”(将 NO 和 RECORD 分开,因为它怎么会知道不这样做?)因此忽略任何具有更少的行价值观。您可能可以更好地了解
fread(bah, verbose=TRUE)的作用。
标签: r data.table fread