データフレームの単一行にフォーマットする必要がある一意の ID ごとに複数の行を持つ csv ファイルがあります。このファイルを読み込んだ後、最初のデータフレームになります。
id week v1 v2
01 week1 3 2
01 week2 5 2
01 week3 2 3
02 week1 1 2
02 week2 5 5
03 week1 4 1
03 week2 4 3
03 week3 4 2
[etc...]
特定のIDのv1のすべてのインスタンスをプルしたいので、すべての一意のIDを取得します
uniqid<-unique(data$id)
そして、これらを 1:length(uniqid) から繰り返します
temp <- subset(data,data$id==uniqid[i])
毎週のデータを一時変数にプルします
week1 <- temp$v1[temp$week=="week1]
rbindを使用してデータフレームを再構築できます
output <- rbind(output,data.frame(ID=uniqid[i],week1,week2,week3))
私の問題は、たとえばid = 02の場合、week3がないため、rbindが壊れることです。week3 変数が作成されていないようです。NAと表示されません。rbind が失敗しないように、変数が作成されて NA (または 0) に設定されているかどうかをテストするにはどうすればよいですか? または、これを達成するための完全に異なる/より効率的な方法はありますか?