我是Python的新手,在阅读脚本时,我遇到了以下语法:
def approximate_random_effects(data, labels, group):
correlation_per_donor = {}
for donor_id in set(data[group]):
correlation_per_donor[donor_id], _, _, _, _ = \
linregress(
list(data[labels[0]][data[group] == donor_id]),
list(data[labels[1]][data[group] == donor_id]))
average_slope = np.array(correlation_per_donor.values()).mean()
t, p_val = ttest_1samp(correlation_per_donor.values(), 0)
为什么correlation_per_donor[donor_id]
的LHS有_,
,为什么RHS有这么多()
并且其中嵌套了[]
?我不明白它,甚至通过Codeacademy的list / dict教程运行它没有帮助。
需要建议,谢谢!
编辑:我对剧本的理解是否正确?附在下面:for each donor ID,
for-loop在驻留在DATA中的组中选择donor_id:
LHS有5个变量,但只使donor_id
成为字典“correlation_per_donor
”的一部分
RHS在2个列表上linregress
,其中(DATA中的标签[第一项],DATA == donor_id中的组)和(DATA中的标签[第二项],DATA == donor_id中的组)
答案 0 :(得分:1)
_
只是一个变量名称,在这种情况下用于说"我忽略了这些数据"。
右侧有[]
个,因为它是列表和词典的嵌套数据结构。