我有一个看起来像这样的数据框:
a <- c("jan", "mar", "jan", "feb", "feb")
b <- c("feb", "mar", "mar", "jan", "mar")
c <- c("jan", "feb", "feb", "jan", "jan")
d <- c("jan", "mar", "jan", "feb", "feb")
e <- c("feb", "jan", "feb", "mar", "mar")
f <- c("jan", "feb", "feb", "jan", "jan")
xxx <- data.frame(a,b,c,d,e,f)
xxx
我需要在每个字符串实例的xxx中找到位置,例如“jan”。我可以看到在df中的每个插槽中运行并检查其是否==“jan”的可靠解决方案,但是肯定有一种正确且更轻松的方法。理想情况下,我希望将结果作为坐标列表返回。
感谢您的任何帮助!
最佳答案
函数which
有一个名为arr.ind
的参数,它将为您提供2列矩阵,指示每个匹配项的位置
which(xxx == "jan", arr.ind=TRUE)
row col
[1,] 1 1
[2,] 3 1
[3,] 4 2
[4,] 1 3
[5,] 4 3
[6,] 5 3
[7,] 1 4
[8,] 3 4
[9,] 2 5
[10,] 1 6
[11,] 4 6
[12,] 5 6
关于R-在数据框中查找字符串的每个位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26500289/