这就是我在寻找“这些数字中,有多少比例与列表的平均值相差在一个标准差之内?“……”
library(dplyr)
bodyweights <- dat$Bodyweight
mean_bodyweights <- mean(bodyweights)
sd_bodyweight <- sd(bodyweights)
lower_bound <- mean_bodyweights - sd_bodyweight
upper_bound <- mean_bodyweights + sd_bodyweight
proportion_with1sd <- pnorm(upper_bound, mean_bodyweights, sd_bodyweight) - pnorm(lower_bound, mean_bodyweights, sd_bodyweight)
print(proportion_with1sd)
#> [1] 0.6826895
字符串
接下来的问题是“定义y为对照饮食组雄性的体重。
有多少比例的小鼠与平均体重相差在一个标准差之内?“我是这样写的:
library(dplyr)
male_chow_data <- dat %>%
filter(Sex == "M" & Diet == "chow")
y <- male_chow_data$Bodyweight
mean_weight_chow <- mean(y)
sd_weight_chow <- popsd(y)
lower_bound <- mean_weight_chow - sd_weight_chow
upper_bound <- mean_weight_chow + sd_weight_chow
proportion_within1sd <- pnorm(upper_bound, mean_weight_chow, sd_weight_chow) - pnorm(lower_bound, mean_weight_chow, sd_weight_chow)
print(proportion_within1sd)
#> [1] 0.6826895
型
我不明白为什么我得到了同样的答案。为什么它不使用我指定为“male_chow_data”的数据,而是使用整个列表?
我使用了rm()函数,并重新执行了一遍,但得到的响应仍然相同
1条答案
按热度按时间hmtdttj41#
您的代码计算位于标准正态分布均值的一个SD内的值的概率。这将始终是0.6826895,无论您的计算基于什么数据。
字符串
渐近地(我在下面使用1000000作为一个大数),您将获得与
型