for 循环后如何把循环中得到的对象拿到for 外面用
# 打算检测dependent_factor在每一个分组中(具体类型==independent_factor),是否都是正态分布independent_factors=['bs_con','bs_copd','healthy_con','smoking_con','smoking_copd','B+S con','B+S copd']
n=0
data_n=[[
for indepent_factor in independent_factors:
n=n+1
data_n1 = df.loc[(df['具体类型'] == indepent_factor)]
data_n.append(data_n1)
#把每一组的数据分别写成data_1,data_2,data_3......
想写成
eva_stat, p2 = stats.levene(data_1,data_2.......)
可是系统找不到data_1,data_2
我试过
eva_stat, p2 = stats.levene(data_n)
也不行
应该怎么修改呢
多谢了
eva_stat, p2 = stats.levene(*data_n) 你想把什么东西拿出 for 循环 ,调用自定义函数,把对象作为参数传出去处理不行吗? 写成data_1,data_2,data_3......没有任何好处吧,用repr就可以 kogawananari 发表于 2021-1-2 00:46
eva_stat, p2 = stats.levene(*data_n)
您的这个,确实行,只是我没看懂,为什么*data_n后,就可以呢 jackz007 发表于 2021-1-2 00:55
你想把什么东西拿出 for 循环 ,调用自定义函数,把对象作为参数传出去处理不行吗?
就是不知道,如何把对象作为参数传出去 chenjl1972 发表于 2021-1-2 07:14
就是不知道,如何把对象作为参数传出去
def foo(p):
print(p , p)
d = {"A":1 , "B" : 2 , "C" : 3 , "D" : 4 , "E" : 5}
for x in d . items():
foo(x) chenjl1972 发表于 2021-1-2 07:11
您的这个,确实行,只是我没看懂,为什么*data_n后,就可以呢
foo(*)相当于foo(1,2,3)
页:
[1]