【发布时间】:2019-10-07 19:46:01
【问题描述】:
我需要用“R”中的文本文件制作一个表格,以便对其进行统计。我的文本文件包含特殊字符,如“$”和“下一行符号”(或 Microsoft Word 中的段落 sing,等于 Microsoft Word 中的 ^p)。
我阅读了this post,但它没有回答我的问题。 例如,我的文本文件是这样的:
-The$data 1 is taken on Aug, 2009 at UBC
and is significant with p value <0.01
-The$data 2 is taken on Sep, 2012 at SFU
and is not significant with p value > 0.06
-....
使用 gsub 进行多个查找/替换,我想制作一个这样的表:
1,Aug,2009,UBC,,p value <0.01
2,Sep,2012,SFU,not, p value > 0.06
如果您知道从文本文件中提取表格的任何包/函数,这也会很有帮助。
【问题讨论】:
-
这个问题是关于将非标准文件解析为
data.frame,使用换行符与它有什么关系?解决这个问题需要一些正则表达式的工作。 -
我认为你的换行点是指如何组合看似相关的行,我认为stackoverflow.com/a/58208836/3358272 将非常相关(特别是
cumsum(grepl(...)))。从那里开始,我认为您的正则表达式将能够更好地处理每次观察的一行。 -
Lionette,这个问题的任何解决方案(正则表达式或其他)的强度将在很大程度上取决于您提供的数据的稳定性。这里有足够的样本来处理仓促的事情,但如果您有明显不同的文本(例如没有
p value,或缺少逗号等),那么最好在样本中包含变体行。 -
Lionette,通过删除 regex 标记,您是否暗示您不想要基于正则表达式的解决方案?
-
哦,对不起,我以为我错误地添加了正则表达式,我不知道什么是正则表达式。我只是用谷歌搜索并找到了。抱歉,我是“R”的新手