使用R,我试图用||读取一个大的(1.3 g)文本文件双管分隔符。具体来说,它看起来像这样:
||Header1||,||header2||,||Header3||
||0.001||,||0.002||,||0.003||
我在here描述的fread功能方面取得了成功。但是,该函数不允许具有多于1个字符的分隔符。因此,当我设置sep =" auto"时,我会得到具有正确值的单元格,但它们具有" ||"在双方。
我会在文本编辑器中进行查找和替换以更改" ||" to",",但它太大而无法在合理的时间内完成。
你的帮助是一个救命的人。谢谢!
答案 0 :(得分:1)
那些看起来不是分隔符,但也许它们是,我只是不知道它。无论哪种方式,不是将||
更改为,
,而是可以简单地删除它们,然后可以将生成的矢量放入read.csv
的数据框中。
在下面g
的代码中,将textConnection(txt)
替换为您的文件名。
txt <- "||Header1||,||header2||,||Header3||
||0.001||,||0.002||,||0.003||"
g <- gsub("||", "", readLines(textConnection(txt)), fixed=TRUE)
read.csv(text = g)
# Header1 header2 Header3
# 1 0.001 0.002 0.003