質問

x [[state]] [[year]] のようなリストのリストがあります。この各要素はデータフレームであり、個々にアクセスすることは問題ではありません。

ただし、複数のリストにまたがってデータフレームを再バインドしたいと思います。より具体的には、何年もの間、できるだけ多くのデータフレームを出力したいと思います。つまり、各年内のすべての状態データフレームをバインドします。つまり、年ごとにすべての状態データを個別のデータフレームに結合したいと考えています。

do.call(" rbind"、list)を使用して、単一のリストをデータフレームに結合できることを知っています。しかし、リストのリスト間でこれを行う方法はわかりません。

役に立ちましたか?

解決

次の行に沿って何かを行うことができます(そのような構造がないため、テストできませんでした):

extract.year <- function(my.year) lapply(x, function(y) y[[my.year]])

x.by.year <- sapply(my.list.of.years, function(my.year)
    do.call(rbind, extract.year(my.year)))   

関数extract yearは、指定された年のデータフレームのみを含むリストを作成します。次に、それらをバインドします...

他のヒント

最初にリストに折りたたみます:

list <- unlist(listoflists, recursive = FALSE)
df <- do.call("rbind", list)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top