在r

时间:2017-12-18 17:44:50

标签: r sampling

在从头开始编写代码时仍然在与R斗争。我问了一个问题here,但无法得到答案。我非常感谢一些指示。

我有一个包含6个变量的矩阵。我想从前三列中随机抽样并重新计算三列的匹配值(第6列)并计算第6列的平均值。我们的想法是随机抽样观察1000次重复的实际平均值。理想情况下,我将绘制均值的分布。

这是我的数据

df1 = data.frame(v1 = c("Low", "Low", "High"), 
                 v2 = c("Med", "High","Low"), 
                 v3 = c("NA", "Low", "Low"),
                 ID = c(1L, 1L, 1L),
                 ID_name = c("AAA", "AA", "A"),
                 Consistency = c(1L,2L,2L))

从我所做的所有阅读中,看起来像sample()函数对于向量而不是矩阵是好的。我使用了一些代码,但这似乎不起作用,我认为这是错误的。但我不知道该怎么做才能找到解决问题的办法。这是我的代码:

sample_size <- 3
n_rep <- 1000
s_means <- rep(NA, n_rep)

for (i in 1:n_rep){
    my_samp <- sample(df1, sample_size)
    s_means[i] <- mean(my_samp)
}

hist(s_means, breaks = 1)
abline(v = mean(df1), lty = 3)

任何建议都将不胜感激。

0 个答案:

没有答案