2012-10-23 97 views
3

我有一個簡單的問題,但我無法找到任何答案。 我有以下數據集:抽樣分佈的樣本平均值

data.set <- c(7,7,8,8,7,8,9) 

從基本統計資料書的問題是: 是什麼樣的抽樣分佈平均尺寸爲2的樣本? 是否有可能在R指揮官(或使用命令行)中計算此值。

回答

1

mean2 <- function(x,y){ (x+y)/2 } 
table(outer(data.set, data.set, "mean2"))/length(data.set)^2 

會給

  7  7.5   8  8.5   9 
0.18367347 0.36734694 0.30612245 0.12244898 0.02040816 

這可能是你正在尋找的那種東西。這些概率的9 1/49,18,15,6,和1


加了:無需更換

mean2 <- function(x,y){ (x+y)/2 } 
L  <- length(data.set) 
table(outer(data.set, data.set, "mean2")[- ((L+1)*(1:L)-L) ])/(L*(L-1)) 

,得到

 7  7.5   8  8.5 
0.1428571 0.4285714 0.2857143 0.1428571 

它們是1/7 ,4/7,2/7,1/7,

+1

如果你的樣品是替換。 – Backlin

+0

@IrisPriest如果這本書確實給出了樣本均值*的抽樣分佈,就是數字'21',那麼這本書就是一種可憎的東西,你應該用火把它殺死。 –

+1

@Glen_b我很抱歉有一個令人困惑的評論(刪除)。很明顯,作爲迴應,本書給出了實際的抽樣分佈。我只是想強調這一點,而不是替代。謝謝,Iris –

4

下面是幾種方法來查看抽樣分佈時做一個簡單的隨機樣本沒有替換:

# Exact 
data.set <- c(7,7,8,8,7,8,9) 
samps <- combn(data.set, 2) 
xbars <- colMeans(samps) 
table(xbars) 
prop.table(table(xbars)) 
barplot(table(xbars)) 

# Simulated 
data.set <- c(7,7,8,8,7,8,9) 
out <- replicate(10000, mean(sample(data.set, 2))) 
prop.table(table(out)) 
hist(out) 

確切的版本適用於小羣體(如本文),但對於大量羣體/樣本不適用。如果你的人口數量是100,你的樣本數量是10,你可以計算每秒10,000個平均數,那麼確切的版本仍然需要將近55年的時間,所以在這種情況下,模擬版本會更好。

+0

斯諾先生和亨利先生非常感謝您的及時答覆。他們受到高度讚賞。問候,虹膜 –