读表与separator = k空格和k变量

rob*_*ard 8 r text-files

我有一个文本文件,数据由空格分隔.白色空间的数量是变化的,我不能使用read.table.你有建议吗(ps我在Windows上).

文件中的两行:

 13001  200901010200    11.49   -23.01  -999.00
 46001  200904300200    56.30  -148.00  -999.00
Run Code Online (Sandbox Code Playgroud)

Jos*_*ich 7

即使进行了编辑,问题仍然不明确.你的例子适合我.

Lines <-
"13001  200901010200    11.49   -23.01  -999.00
46001  200904300200    56.30  -148.00  -999.00"

con <- textConnection(Lines)
x <- read.table(con)
close(con)
x
#      V1           V2    V3      V4   V5
# 1 13001 200901010200 11.49  -23.01 -999
# 2 46001 200904300200 56.30 -148.00 -999
Run Code Online (Sandbox Code Playgroud)

有效的默认值是sep=""因为(正如它所说?read.table):

如果'sep =""'('read.table'的默认值),则分隔符为"空格",即一个或多个空格,制表符,换行符或回车符.

  • 啊,我明白你在做什么.指定`sep =""`实际上意味着一个空格.默认的"sep =""`表示"空白".有关详细信息,请参阅"?read.table". (2认同)

Meg*_*ron 5

Usingsep=""在逻辑上等同于任意数量的空格(在正则表达式中,"\s+")。

要使用read.delim()或读取数据read.table(),请使用:

read.delim(fileName, sep="")
Run Code Online (Sandbox Code Playgroud)

这也会删除前导空格(在第一列之前)。