循环 - 调用一系列索引数据

loop - calling a series of indexed data

我正在尝试生成 std_error 的列表,方法是通过其 [i] 索引调用所有 std_dev_of_sample_means 并将其除以其各自的 [i^.5],但我不确定如何在 std_dev_of_sample_means 中正确调用 [i]。谢谢!

sample_sizes2 = np.arange(1,1001,100)

mean_of_sample_means = []
std_dev_of_sample_means = []
for i in sample_sizes2:
    probabilities=make_throws(200,i)
    mean_of_sample_means.append(np.mean(probabilities))
    std_dev_of_sample_means.append(np.std(probabilities))
    std_error = std_dev_of_sample_means[i]/(i^.5)

print(std_dev_of_sample_means)
print(std_error)

我希望这就是你要找的:) 如果我误解了你的问题请告诉我

sample_sizes2 = np.arange(1,1001,100)

mean_of_sample_means = []
std_dev_of_sample_means = []
std_errors = []
for i in sample_sizes2:
    probabilities=make_throws(200,i)
    mean_of_sample_means.append(np.mean(probabilities))
    std_dev_of_sample_means.append(np.std(probabilities))
    std_errors.append(std_dev_of_sample_means[-1]/(i**.5)) # previously it was i^.5

print(std_dev_of_sample_means)
print(std_errors)

std_dev_of_sample_means[-1] 引用列表中最后一个元素的值(因为 [-1] 访问列表中的最后一个值)。在这种情况下,它是您刚刚附加到 std_dev_of_sample_means

的值

编辑 1:将 i^.5 更改为 i**.5。当您想要 ** 将值提升为幂时,您正在使用 ^。 Python 将其解释为异或运算。

我相信您只是想使用 enumerate() 来获取 for-loop

的索引和值
sample_sizes2 = np.arange(1,1001,100)

mean_of_sample_means = []
std_dev_of_sample_means = []
for index,value in enumerate(sample_sizes2):
    probabilities=make_throws(200,value)
    mean_of_sample_means.append(np.mean(probabilities))
    std_dev_of_sample_means.append(np.std(probabilities))
    std_error.append(std_dev_of_sample_means[index]/(value**.5))  *-edit: added append and changed ^ to **

print(std_dev_of_sample_means)
print(std_error)