Python 使用for循环基于测试创建值向量

Python 使用for循环基于测试创建值向量,python,for-loop,Python,For Loop,这感觉应该是一个简单的问题,但我对python比较新,在R中,我将使用foreach循环,它为我提供了一个组合选项 我尝试了一个for循环,它允许我打印出所有需要的值,但我希望将它们收集到一个值向量中,以便以后使用 从scipy.stats导入gamma 将scipy.stats导入为stats 将numpy作为np导入 随机输入 data2=np.random.gamma(1,2,大小=500) gammT=np.log(数据2+1) 平均值=np.平均值(gammT) sd=np.std(

这感觉应该是一个简单的问题,但我对python比较新,在R中,我将使用foreach循环,它为我提供了一个组合选项

我尝试了一个for循环,它允许我打印出所有需要的值,但我希望将它们收集到一个值向量中,以便以后使用


从scipy.stats导入gamma
将scipy.stats导入为stats
将numpy作为np导入
随机输入
data2=np.random.gamma(1,2,大小=500)
gammT=np.log(数据2+1)
平均值=np.平均值(gammT)
sd=np.std(gammT)
a=(平均值/标准差)**2
b=(标准差**2)/平均值
对于范围(1100)内的i:
gammT=随机样本(列表(gammT),500)
gamm=np.random.gamma(a,b,size=len(gammT))
s=stats.anderson_ksamp([gammT,gamm])
s=s[2]
印刷品

所以我可以打印出我想要的所有值,但我想把它们都集中在一个值向量中。我曾尝试添加和制作列表,但无法将它们组合在一起。

range(1100):
请提供一个可复制的示例@clinton,data2.iscore未定义。我现在使用可复制的代码和范围,我习惯于使用1:100在R中获得一个数字字符串,我在键入时忽略了这一点。
from scipy.stats import gamma
import scipy.stats as stats
import numpy as np
import random

gammT =  np.log(data2.iScore + 1)

mean = np.mean(gammT)
sd = np.std(gammT)

a = (mean/ sd)**2
b = (sd**2)/ mean

#initialize empty list
result=[]

for i in range(100): 
# removed (1,100) you only need range(100) for 100 elements
    gammT = random.sample(list(gammT), 500)
    gamm = np.random.gamma(a,b, size = len(gammT))
    s = stats.anderson_ksamp([gammT,gamm])
    s = s[2]
    #append calculation to list
    result.append(s)
    print(s)
print(result)