如何在data.frame中搜索字符串?作为一个最小的示例,如何在此data.frame中找到“马”的位置(列和行)?

> df = data.frame(animal=c('goat','horse','horse','two', 'five'), level=c('five','one','three',30,'horse'), length=c(10, 20, 30, 'horse', 'eight'))
> df
  animal level length
1   goat  five     10
2  horse   one     20
3  horse three     30
4    two    30  horse
5   five horse  eight

...因此,第4行和第5行的顺序错误。任何可以让我识别“马匹”已移至第5行中的level列和第4行中的length列的输出都是很好的。也许:

> magic_function(df, 'horse')
col       row
'animal', 2
'animal', 3
'length', 4
'level',  5

这就是我要使用的内容:我有一个非常大的数据框(大约60列,20.000行),其中有些列弄乱了一些行。为了识别顺序错误的不同方式,它太大了,无法进行搜索,因此搜索会很不错。我将使用此信息将数据移动到这些行的正确列。

最佳答案

关于什么:

which(df == "horse", arr.ind = TRUE)
#      row col
# [1,]   2   1
# [2,]   3   1
# [3,]   5   2
# [4,]   4   3

关于r - 在data.frame中查找字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39450003/

10-12 14:02