私はの2段階質問を持っています。私が持っているものに似たデータセットを作成するには、我々はairqualityデータセットで始めることができます。Rキャスト:小計に値/条件付き除外を適用する
myaqm <- melt(airquality, id=c("Month", "Day"), na.rm = TRUE)
myaqm_dcast <- dcast(myaqm, Day+variable~Month,
value.var = "value", sum, margins=c("Day", "variable", "Month"))
私たちに与えて、この:
> head(myaqm_dcast, n=10)
Day variable 5 6 7 8 9 (all)
1 1 Ozone 41.0 0.0 135.0 39.0 96.0 311.0
2 1 Solar.R 190.0 286.0 269.0 83.0 167.0 995.0
3 1 Wind 7.4 8.6 4.1 6.9 6.9 33.9
4 1 Temp 67.0 78.0 84.0 81.0 91.0 401.0
5 1 (all) 305.4 372.6 492.1 209.9 360.9 1740.9
6 2 Ozone 36.0 0.0 49.0 9.0 78.0 172.0
7 2 Solar.R 118.0 287.0 248.0 24.0 197.0 874.0
8 2 Wind 8.0 9.7 9.2 13.8 5.1 45.8
9 2 Temp 72.0 74.0 85.0 81.0 92.0 404.0
10 2 (all) 234.0 370.7 391.2 127.8 372.1 1495.8
最初の質問:あなたは風を取り除くするにはどうすればよいです各日から(すべて)小計?
dplyr
、おそらくdcast
の代わりに使用することを意図していると思いますが、私の人生のために、サブトータルの除外例を見つけることはできません。
2番目の質問:同様に、我々はまた、すべての変数の毎日平均行、温度除くを含める方法をうまくしようとしています。だから、データセットは、このようなものになります。ここでは
Day variable 5 6 7 8 9 (all)
1 1 Ozone 41.0 0.0 135.0 39.0 96.0 311.0
2 1 Solar.R 190.0 286.0 269.0 83.0 167.0 995.0
3 1 Wind 7.4 8.6 4.1 6.9 6.9 33.9
4 1 Temp 67.0 78.0 84.0 81.0 91.0 401.0
5 1 Day Avg 79.5 98.2 136.0 43.0 90.0 446.6
6 1 (all) 298.0 364.0 488.0 203.0 354.0 1707.0
7 2 Ozone 36.0 0.0 49.0 9.0 78.0 172.0
8 2 Solar.R 118.0 287.0 248.0 24.0 197.0 874.0
9 2 Wind 8.0 9.7 9.2 13.8 5.1 45.8
10 2 Temp 72.0 74.0 85.0 81.0 92.0 404.0
11 2 Day Avg 54.0 98.9 102.1 15.6 93.4 363.9
12 2 (all) 226.0 361.0 382.0 114.0 367.0 1450.0
、日平均をオゾン、の平均Solar.Rと風ある - が一時が含まれていません。
そして(すべて)オゾン、Solar.Rと一時の和である - が風が含まれていません。
私はそれがdplyr
の別のケースだと思います。それは同様の解決策になりますが、私は両方の質問をすると思いました。
編集:私の実際のデータには、1日に4つ以上の変数があり、実際には毎日表示されないものもありますが、毎日の「日平均」変数には、それは名前ではなく必要性よりも、すべての変数の命名よりも(すなわち。温度または風)によって変数を除外するためにきれいになるように「(すべて)」の計算は、(含まれるすなわち。オゾンと太陽。 R)。
明確化:あなたは風はまだ要約に表示したいが、小計の一部ではありませんか? –
確かに。毎日の小計はすべての貢献、サンズウィンドの合計を表します。 summarize()にはWindとTempを含めることができます。 –