週、プローブ、観測数の3つの列を持つRのログを収集しています。
観測がない場合は記録がありません。
week=c(1,2,2,4)
probe=c("A","C","B","C")
obs=c(2,4,3,1)
logs=data.frame(week,probe,obs)
logs
week probe obs
1 A 2
2 C 4
2 B 3
4 C 1
観測がなかった場合でも、すべての週とすべてのプローブが含まれるようにデータを再フォーマットして、次のようにします。
week probe obs
1 A 2
1 B 0
1 C 0
1 D 0
2 A 0
2 B 0
2 C 3
2 D 4
3 A 0
3 B 0
3 C 0
3 D 0
4 A 0
4 B 0
4 C 1
4 D 0
ここにすべてのプローブのリストがあります:
allprobes=c("A","B","C","D")
そして私はこれらの週を見たいと思います:
allweeks=c(1:4)
私はメルト、キャスト、リシェイプを見てきましたが、実際にはログの元の形式を維持したいので、IDまたは月ごとに1行しか取得できません。最初は簡単に思えますが、今は行き詰まっています...この方法でデータをフォーマットする方法について何かアドバイスはありますか?
助けてくれてありがとう。