2016-12-08 17 views
1

すでに集約されたデータに対して適切なmedian計算を行うにはどうすればよいですか?あらかじめ集計されたデータ(平均と数値を持つ)の平均値を計算する

は、私はこの

> df <- data_frame(name = c("A","B","C","D"), count = c(1,3,5,2), avg = c(100,50,20,10)) 
> df 
# A tibble: 4 × 3 
    name count avg 
    <chr> <dbl> <dbl> 
1  A  1 100 
2  B  3 50 
3  C  5 20 
4  D  2 10 

のように見えるのデータフレームがあると我々はビンの内側に何あまり知らないと仮定しますが、ビン内の小さな変化があると仮定します。我々の知る限り 、我々はこのような値に並ぶでしょう:11個の値のうち

10 10 20 20 20 20 20 50 50 50 100 

を、中央値は

しかし、もしある、第六ものであろう10, 20, 50, 100

> median(df$avg) 
[1] 35 

私が欲しいものではありません:私は単にmedian()を取る、Rは、4つの値の上にそれを取ります。

これを回避してデー​​タセットを「展開」するにはどうすればよいですか?

答えて

2

Zheyuan Liによってコメントされました。 それは簡単で、私はそれについて知らなかったのに驚いています。

with(df, median(rep.int(avg, count)))