次のように 3 つのデータ フレームがあります。
d1 <- data.frame(level1 = c("A", "A", "B", "C", "C"),
level2 = c("AA", "AB", "BA", "CA", "CB"))
d2 <- data.frame(level1 = c("A", "A", "A","B", "B", "C", "C"),
level3 = c("1", "2", "4", "2", "3", "1", "5"))
d3<- data.frame(level3 = c("1", "2", "3", "4", "5"), AA = c("v1", "v2", "v3", "v4", "v5"),
AB = c("v6", "v7", "v8", "v9", "v10"), BA = c("v11", "v12", "v13", "v14", "v15"),
CA = c("v16", "v17", "v18", "v19", "v20"), CB = c("v21", "v22", "v23", "v24", "v25"))
これらの 3 つのデータ フレームを出力として使用したいと思います。
A <- data.frame(level3 = c("1", "2", "4"), AA = c("v1", "v2", "v4"), AB = c("v6", "v7", "v9"))
B <- data.frame(level3 = c( "2", "3"), BA = c("v12", "v13"))
C <- data.frame(level3 = c("1", "5"), CA = c("v16", "v20"), CB = c("v21", "25"))
提供された 3 つのデータフレーム (d1、d2、および d3) から、「Level1」(A、B、C ..) ごとに個別のデータフレームを取得したいと思います。
これらの出力データフレームには、d1 基準に従う列が含まれている必要があります。行には、d2 の基準に従って一致する level3 番号が含まれている必要があります。
例えば、
d1 によると、AA と AB は A と一致します。したがって、データ フレーム A にはこれらの 2 つの列が含まれている必要があります。
d2 によると、1,2,4 は A と一致するため、これらはデータ フレーム「A」の行である必要があります。
データ フレーム「A」の値は、d3 に基づく必要があります。私は自分自身を説明したことを願っています。ありがとう、
.
これをどのように行うことができるかについてのアイデアはありますか?
私の実際の例では、レベル 1 とレベル 2 の命名法に共通点はありません。
ご協力ありがとうございました、