2016-12-08 155 views
1

中的預彙總數據(具有平均值和計數)的中位數如何才能對已經彙總的數據進行適當的median計算?計算R rstats

說我有看起來像這樣的

> 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 

假設我們不知道多少什麼的垃圾箱內做一個數據幀,但假設有垃圾桶內幾乎沒有變化。 據我們所知,我們會排隊的值是這樣的:

10 10 20 20 20 20 20 50 50 50 100 

出11個值,中值將是之一,這是

但如果我只是拿median(),R取過來4個值:10, 20, 50, 100

> median(df$avg) 
[1] 35 

這是不是我想要的。

我該如何解決這個問題並「展開」數據集?

回答

2

由李哲元評論解決。 這很簡單,我很驚訝,我不知道它。

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