【发布时间】:2017-04-21 14:09:02
【问题描述】:
假设我们有一个包含两列、一个字符、一个数字的数据框:
df <- data.frame(chr = letters[1:10],
ind = c(NA, NA, 1, NA, NA, 2, NA, NA, 3, NA))
chr ind
1 a NA
2 b NA
3 c 1
4 d NA
5 e NA
6 f 2
7 g NA
8 h NA
9 i 3
10 j NA
您如何粘贴chr 列的行,每次只占用ind 中非NA 索引之间的行?
我希望第一行直到第一个非NA被忽略,然后我们遇到ind = 1,然后连接“d”和“e”,然后我们遇到ind = 2,然后连接“ g”和“h”等。创建:
newChar
"d e"
"g h"
"j"
如果没有 for 循环,你将如何做到这一点?
【问题讨论】:
-
您提出了这个问题,并在一分钟内找到了解决方案,并在下面编写了所有代码并将其发布在此处?
-
不,我写了这个问题,然后认为我必须能够解决它,然后认为我的解决方案可能对其他人有益,并发布了问题和答案。根据 SO“法律”,这是错误的吗?告诉我,我会删除所有内容。
-
很公平。我不知道规则,这让我有点困惑;)
-
另外根据“规则”,在两天过去之前我不能接受自己的答案,我假设是为了让其他人想出可能更好的解决方案。他们什么都想好了!
-
是的,根据 SO 规范,您在这里所做的一切都很好。
标签: r concatenation