これは私のデータの小さな再現可能な例です:
> mydata <- structure(list(subject = c(1, 1, 1, 2, 2, 2), time = c(0, 1, 2, 0, 1, 2), measure = c(10, 12, 8, 7, 0, 0)), .Names = c("subject", "time", "measure"), row.names = c(NA, -6L), class = "data.frame")
> mydata
subject  time  measure
1          0      10
1          1      12
1          2       8
2          0       7
2          1       0
2          2       0
「ベースラインからの変化」である新しい変数を生成したいと思います。つまり、私はしたいです
subject  time  measure  change
1          0      10      0
1          1      12      2
1          2       8     -2
2          0       7      0
2          1       0     -7
2          2       0     -7
プログラムですべてのレコードをループするか、最初にワイドフォーマットに再形成する以外に、これを行う簡単な方法はありますか?