次のデータフレームがあります。
df<-data.frame(site=c("A", "A", "B", "C", "B"), A=c("item1", "item1", "item2", "item2", "item3"),
A_weight=c(4.2,4.2,6.1,6.4,8.5), A_numbers=c(1,2,8,5,2))
[x]
列の各項目について、 2 つの新しい列が自動的に作成され、 andA
という名前が付けられるようにしたいと考えています。これらの各列に、 in columnの各出現に隣接する初期データ フレームのand列の値を割り当てたいと考えています。"item[x]_weight"
"item[x]_numbers"
A_weight
A_numbers
item[x]
A
最終的なデータ フレームは次のようになります。
df_final<-data.frame(site=c("A", "A", "B", "C", "B"), A=c("item1", "item1", "item2", "item2", "item3"),
A_weight=c(4.2,4.2,6.1,6.4,8.5), A_numbers=c(1,2,8,5,2), item1_weight=c(4.2,4.2, NA, NA, NA),
item1_numbers=c(1,2, NA, NA, NA), item2_weight=c(NA, NA, 6.1, 6.4, NA),
item2_numbers=c(NA, NA, 8, 5, NA), item3_weight=c(NA, NA, NA, NA, 8.5),
item3_numbers=c(NA, NA, NA, NA, 2))
reshape パッケージと match 関数を使用していくつかのアプローチを試みましたが、進歩していないように感じます (つまり、まともな結果が得られません...)。元のデータセットに非常に大きな「アイテム」のリストがあることを考えると、これは手動で行う手順ではありません。私はRにまったく慣れておらず、いくつかのガイダンスを使用できるので、どんな支援も大歓迎です。ありがとうございました