我的数据框包含500个样本的抽样方法,每个样本大小为100。以下是快照。我需要计算平均值为90/95/99的置信区间。
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 :(得分:1)
Means_df
是一个包含500行和1列的数据框。因此
dim(Means_df)[2]
将给出值1
。
这就是为什么你只得到一个值。
使用dim(Means_df)[1]
或更好nrow(Means_df)
代替dim(Means_df)[2]
来解决问题。
答案 1 :(得分:1)
任何单一的意思,e。 G。 14997,你不能在不知道数据的方差或标准偏差的情况下计算95%-CI,平均值是从。如果您可以访问每个样本的标准差,则可以计算平均值的标准误差,并且可以轻松计算95%-CI。显然,您缺少任务所需的信息。