我的任务是绘制10000个大小为n = 10,20,50,100,200和100的样本,取这些样本的均值和标准差,绘制每个样本平均值的直方图,最后绘制样本标准差 . 针对样本量 . 这是我到目前为止的代码:

set.seed(1234)
N = 10000
s = 6
r = .6
sample1 = sample(N, 10)
sample2 = sample(N, 20)
sample3 = sample(N, 50)
sample4 = sample(N, 100)
sample5 = sample(N, 200)
sample6 = sample(N, 1000)
sample.mean1 = mean(sample1)
sample.mean2 = mean(sample2)
sample.mean3 = mean(sample3)
sample.mean4 = mean(sample4)
sample.mean5 = mean(sample5)
sample.mean6 = mean(sample6)
sample.means = c(sample.mean1, sample.mean2, sample.mean3, sample.mean4, sample.mean5, sample.mean6)
hist(rgamma(sample.mean1, shape = s, rate = r), breaks = 100, freq = FALSE)
hist(rgamma(sample.mean2, shape = s, rate = r), breaks = 100, freq = FALSE)
hist(rgamma(sample.mean3, shape = s, rate = r), breaks = 100, freq = FALSE)
hist(rgamma(sample.mean4, shape = s, rate = r), breaks = 100, freq = FALSE)
hist(rgamma(sample.mean5, shape = s, rate = r), breaks = 100, freq = FALSE)
hist(rgamma(sample.mean6, shape = s, rate = r), breaks = 100, freq = FALSE)
sample.sd1 = sd(sample.mean1)
sample.sd2 = sd(sample.mean2)
sample.sd3 = sd(sample.mean3)
sample.sd4 = sd(sample.mean4)
sample.sd5 = sd(sample.mean5)
sample.sd6 = sd(sample.mean6)
sample.sds = c(sample.sd1, sample.sd2, sample.sd3, sample.sd4, sample.sd5, sample.sd6)
sample.sizes = c(10, 20, 50, 100, 200, 1000)
plot(sample.sds, sample.sizes)

运行最后一行时出现此错误:

Error in plot.window(...) : need finite 'xlim' values

帮助解决这个问题将非常感激 .

Correction: 我实际上是想计算10000个样本中样本均值的标准偏差 . 那么错误是标准偏差是NA . 我的代码仍然是相同的,但现在我知道为什么我得到了xlim错误 . 我现在需要帮助来获取每个样本均值的标准偏差并返回不是NA的值 .