2014-10-20 58 views
1

使用R,我试图在一个大的(1.3克)文本文件中读取||。双管道分隔符。具体来说,它看起来像这样:用双管道分隔符读取大文本文件

||Header1||,||header2||,||Header3|| 
||0.001||,||0.002||,||0.003|| 

与fread函数描述here我曾在速度方面的成功。但是,该函数不允许超过1个字符的分隔符。所以当我设置sep =“auto”时,我得到了正确的值的单元格,但他们有“||”在双方。

我会在文本编辑器中查找并替换“||”到“,”,但它太大而无法在合理的时间内完成。

你的帮助是一种生活救星。谢谢!

+0

谢谢 - 固定。 – Duane321 2014-10-20 17:58:49

+0

我编辑了我的答案。希望工程 – 2014-10-20 21:35:21

回答

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 
+1

巨大的帮助!我非常感谢,谢谢! – Duane321 2014-10-20 22:44:15