1

データフレームのリストがあります。特定の行名を含むデータフレームのインデックスを見つける方法はありますか?

たとえば、私が持っていたとしましょう

mylist<-list(
          data.frame(c(1,1),c(1,1),row.names = c('row1','row2')),
          data.frame(c(1,1),c(1,1),row.names = c('row3','row4'))
             )

そして、どこにあったかを見つけたかったrow3のですが、リストの2番目のデータフレームにあるため、クエリは2を返します。

4

2 に答える 2

6

一方通行:

sapply(mylist, function(x)"row3" %in% rownames(x))
[1] FALSE  TRUE

または、同じテーマのバリエーションでNA、行名が見つからない場合は返され、見つかった場合は行番号が返されます。

sapply(mylist, function(x)match("row3", rownames(x)))
[1] NA  1
于 2012-08-31T16:13:18.343 に答える
0

試す

> lapply(lapply(mylist,rownames),function(x){any(grepl('row3',x))})
[[1]]
[1] FALSE

[[2]]
[1] TRUE

#> seq_along(mylist)[sapply(lapply(mylist,rownames),function(x){any(grepl('row3',x))})]
#[1] 2
#> 
于 2012-08-31T16:13:35.870 に答える