データフレームのリストでデータフレームを分割したいと考えています。それを分割する理由は、我々は常にfather
と、それに続くと、それに続くoffspring
があるということです。しかしながら、これらのファミリーメンバーは、複数の行を有してもよい(常に続く)。例えば、father
の番号1は、行1および行2にある。下の例では2つのファミリがあり、2つのデータフレームを持つリストを取得しようとしています。順序付き複数階級列に基づいてデータフレームを分割する
マイ入力:
df <- 'Chr Start End Family
1 187546286 187552094 father
3 108028534 108032021 father
1 4864403 4878685 mother
1 18898657 18904908 mother
2 460238 461771 offspring
3 108028534 108032021 offspring
1 71481449 71532983 father
2 74507242 74511395 father
2 181864092 181864690 mother
1 71481449 71532983 offspring
2 181864092 181864690 offspring
3 160057791 160113642 offspring'
df <- read.table(text=df, header=T)
このように、私の予想出力dfout[[1]]
は、次のようになります。個別のデータフレームにそれぞれの家族を分割するには
dfout <- 'Chr Start End Family
1 187546286 187552094 father
3 108028534 108032021 father
1 4864403 4878685 mother
1 18898657 18904908 mother
2 460238 461771 offspring
3 108028534 108032021 offspring'
dfout - read.table(text=dfout, header=TRUE)
データフレームの行を1つのファミリから次のファミリに移動するときにどのような論理があるかはわかりません。 – Phil