首页 > 解决方案 > 如何使用包括从列和行移动的模式在#R 中的数据框中搜索和提取?

问题描述

我想从 R 中的大数据框中搜索并提取一个位于不同位置但始终比单词“LAYER”多一列和一行的数字。

我试过这样做,但我只能找到一种方法来filter使用dplyr包提取“LAYER”,但也许我需要使用不同的东西。

例如,在下表中,我想提取数据框中粗体23.65

X1 X2 X3
1 不适用
190 2 不适用
不适用 20 1200
不适用 30 2200
... ... ...
2 不适用
180 3.65 不适用
不适用 50 1850
不适用 95 2300
... ... ...

获得这样的输出

X
2
3.65
...

非常感谢您,

一个绝望的 R 初学者。

标签: rregexstringr

解决方案


您可以获得索引 where X1is'LAYER'并提取下一个X2值。

inds <- which(data$X1 == 'LAYER')
result <- data.frame(X2 = data$X2[inds + 1])

推荐阅读