【发布时间】:2015-10-07 15:01:11
【问题描述】:
我在 R 中有一个大约 50,000 行的字符向量(内容)。但是,从文本文件中读取的某些行是在单独的行上,不应该是。具体来说,这些行看起来像这样:
[1] hello,
[2] world
[3] ""
[4] how
[5] are
[6] you
[7] ""
我想合并这些行,这样我就有了如下所示的内容:
[1] hello, world
[2] how are you
我试着写了一个for循环:
for(i in 1:length(content)){
if(content[i+1] != ""){
content[i+1] <- c(content[i], content[i+1])
}
}
但是当我运行循环时,我得到一个错误:需要 TRUE/FALSE 的地方缺少值。
谁能提出一个更好的方法来做到这一点,甚至可能不使用循环?
谢谢!
编辑: 我实际上正在尝试将其应用于每个文档都有数千行的语料库。关于如何将这些解决方案转换为可应用于每个文档内容的函数的任何想法?
【问题讨论】:
-
您收到错误是因为缺少
content[i+1]。 -
@Heroka,你能再解释一下吗?
-
您正在迭代内容的长度,然后以内容长度 + 1 访问内容。这会产生缺失值。但是这种方法不会轻易产生您想要的输出,为您寻找答案。