私の例のデータセット:塗りつぶしデータフレームに組み合わせが欠落し
df <- data.frame(
REGION = c("REGION A", "REGION A", "REGION B"),
CATEGORY = c("A", "B", "B"),
VALUE1 = c(2,3,4),
VALUE2 = c(1,2,3)
)
結果:
REGION CATEGORY VALUE1 VALUE2
1 REGION A A 2 1
2 REGION A B 3 2
3 REGION B B 4 3
は、今私は、データセットでは考慮されていない領域とCATEGORYのすべての組み合わせが充填されていることを望みますこのdf
の0結果のVALUE1およびVALUE2は以下のようになります。
REGION CATEGORY VALUE1 VALUE2
1 REGION A A 2 1
2 REGION A B 3 2
3 REGION B A 4 3
4 REGION B B 0 0
私はalread yはforループを使って動的な文字列を生成する大きな関数を書いていますが、コードのほんの数行でこれを行うもっと簡単な方法があると感じています。私はあまりにも複雑すぎると思っています。何か案は?前もって感謝します。 tidyrから
結果の出力にカテゴリの値がないか、地域が出力データと異なる - 組み合わせの場合、おそらく 'expand.grid()'が役立ちます。 –
上記のように、現在の例では、dはdfNew < - merge(df、expand.grid(df [1:2])、all = TRUE)です。 df [is.na(df)] < - 0 'である。 – lmo