【发布时间】:2018-07-20 23:33:19
【问题描述】:
在大型数据集中查找包含子字符串“en”的所有匹配项的(行、列)位置。
数据集有 100 多个列和 100 万行
本来不知道有没有
示例数据集:
#Dataset call df
col_1 col_2 col_3
1 101 10n1 cb101
2 ed10en dn 101
3 101 NA 1e01
4 101 r1en1 ""
5 en10 101 en5en
结果如下:第一个匹配是 (2,1) ,第二个匹配是 (5,1),第三个匹配是 (4,2) ,第四个匹配是 (5,3) 是解决方案可以提供的预期结果。
>"2,1","5,1","4,2","5,3"
或任何可向量化的表达式。
- ※
which(df == "en",arr.ind = T)找不到匹配的子字符串,对字符不起作用。 - ※
grep("en",df[1:ncol(df)])不能返回ROW索引 - ※
for (i in 1:ncol(df)){print(grep("en",df[i]))}COL 的索引未可视化,无法返回 SECOND ENCOUNTER 在同一列中的索引。 - Excel 中的功能:Ctrl+F --Find > “Find All”更像是 预期的解决方案。
【问题讨论】:
标签: r dataframe string-matching