2016-09-06 56 views
1

我的數據幀包含500個樣本,每個樣本的大小爲100。下面是快照。我需要計算90/95/99平均值的置信區間。使用R的樣本均值的置信區間

head(Means_df) 
    Means 
1 14997 
2 11655 
3 12471 
4 12527 
5 13810 
6 13099 

我使用下面的代碼,但只獲取一行的置信區間。任何人都可以幫助我的代碼?

tint <- matrix(NA, nrow = dim(Means_df)[2], ncol = 2) 
for (i in 1:dim(Means_df)[2]) { 
    temp <- t.test(Means_df[, i], conf.level = 0.9) 
    tint[i, ] <- temp$conf.int 
} 
colnames(tint) <- c("lcl", "ucl") 
+0

您是否試圖爲每一行獲得置信區間?而對於每一行你只有一個值(這是我假設其他一些數據的意思)? – Dason

回答

1

Means_df是一個有500行和1列的數據幀。因此,

dim(Means_df)[2] 

將給出值1

這就是爲什麼你只能得到一個值。

通過使用dim(Means_df)[1]或甚至更好nrow(Means_df)而不是dim(Means_df)[2]來解決問題。

1

對於任何單一的手段, G。 14997,在不知道數據的方差或標準偏差的情況下無法計算95%-CI,平均值是從中計算出來的。如果您可以訪問每個樣本的標準偏差,那麼您可以計算平均值的標準誤差,並且可以輕鬆計算95%-CI。顯然,你缺少任務所需的信息。