生成给定大小的所有样本,并用R替换

问题描述 投票:0回答:1

我想从以下数据生成所有大小为n = 2的样本,并进行替换,然后打印样本均值的样本分布。我想知道是否为此有任何标准的R库?

这是我尝试过的。

library(graphics)
data <- c(10, 12, 14, 16); n <- length(data)
mp <- vector(mode="numeric", length = 100)
for(i in data) {
  for(j in data) {
    mu <- mean(c(i, j))
    mp[mu] <- mp[mu] + 1
    tot <- tot + 1
    }
}
X_bar <- vector()
P_Xbar <- vector()
for(i in 1:length(mp)) {
  if(mp[i]) {
    X_bar <- c(X_bar, i)
    P_Xbar <- c(P_Xbar, mp[i] / tot)  
  }
}
tab <- data.frame(x <- X_bar, y <- P_Xbar); tab
barplot(tab$y * tot, names.arg=tab$x)

我认为我正在做很多不必要的事情,我们可以使用任何标准的R库来做到这一点吗?

r statistics probability distribution sample
1个回答
0
投票

要获取大小为n的样本并进行替换

dataset = 1:100

sample(dataset, size = 2, rep=T)

获得N个样本的均值

N = 1000

means = replicate(N, mean(sample(dataset, 2, rep=T)))

绘制平均值

hist(means)
© www.soinside.com 2019 - 2024. All rights reserved.