我的.txt文件的第一行看起来像这样:
#
12 0.44 0.001 0.94444 123.3455 0.0000001 3432.0 2 1 1 12.2
这是一个空格分隔的数值,但问题是该行以哈希值开头。
我有什么方法可以从R读取第一行,即使它以哈希开头(无需修改文件)?
答案 0 :(得分:3)
如果您将注释指示符选项更改为不在文本文件中的内容,则应加载:
mydat <- read.table('test.txt', comment.char = '&', header = FALSE)
这假设您没有任何想要的行,以防止在开始时加载哈希值。
编辑:您需要更改comment.char的原因是默认为#
答案 1 :(得分:2)
您可以尝试scan
。默认情况下,注释字符指示器comment.char
处于关闭状态。您可以添加nlines = 1
以仅获取文件中的第一行。
x <- "# 12 0.44 0.001 0.94444 123.3455 0.0000001 3432.0 2 1 1 12.2"
as.numeric(scan(text = x, what = "", nlines = 1)[-1])
# Read 12 items
# [1] 12.0000000 0.4400000 0.0010000 0.9444400 123.3455000
# [6] 0.0000001 3432.0000000 2.0000000 1.0000000 1.0000000
# [11] 12.2000000
因此,如果用文件名替换text = x
,应该没问题。