【发布时间】:2021-10-18 20:38:12
【问题描述】:
我正在为一个数据集编写代码,其中包含 7 个不同的数据集,a1,a2,...,a7。每个数据集的维度不同。我想计算相关矩阵,然后得到它们的平均值。
A1 = get_corr(a1)
A2 = get_corr(a2)
A3 = get_corr(a3)
A4 = get_corr(a4)
A5 = get_corr(a5)
A6 = get_corr(a6)
A7 = get_corr(a7)
A_mean = [np.mean(A1),np.mean(A2),np.mean(A3),
np.mean(A4),np.mean(A5),np.mean(A6),
np.mean(A7)]
有没有办法更聪明地写这篇文章?
附言。我想一种方法是输入A=[a_1,a_2,...,a_7],然后使用while循环
A_c = []
for i in len(A):
A_c.append(get_corr(A[i]))
A_mean =[]
for i in len(A_c):
A_mean.append(np.mean(A_c[i])
如果您认为它聪明与否,我将不胜感激?
【问题讨论】:
-
data = [a1,a2,a3,a4,a5,a6,a7]; A_mean = [np.mean(get_corr(a)) for a in data]? -
是的,使用列表是替换编号变量的一种聪明方法。
-
不要使用名为
A1、a1、A2等的变量。创建名为A和a的列表。然后你可以做for i, v in enumerate(a): A[i] = get_corr(v)。