次のデータフレームがあります。
> str(df)
'data.frame': 52 obs. of 3 variables:
$ n : int 10 20 64 108 128 144 256 320 404 512 ...
$ step : Factor w/ 4 levels "Step1","Step2",..: 1 1 1 1 1 1 1 1 1 1 ...
$ value: num 0.00178 0.000956 0.001613 0.001998 0.002975 ...
df$value
ここで、パーセンテージを取得できるように、同じnに属する値の合計で正規化/除算したいと思います。これは機能しませんが、私が達成したいことを示しています。ここでは、同じ n に属する値の合計を dfa に事前計算し、一致するdf$value
集計された合計で元を除算しようとします。dfa$value
n
dfa <- aggregate(x=df$value, by=list(df$n), FUN=sum)
names(dfa)[names(dfa)=="Group.1"] <- "n"
names(dfa)[names(dfa)=="x"] <- "value"
df$value <- df$value / dfa[dfa$n==df$n,][[1]]