python 如何取不同列进行加权平均

谢谢各位 比如数据 有 1 2 3 4 5 6 7 8 9 10 11 一直到 n 列 如何取某4列进行加权平均?
权重为 【 A B C D】
如 新一列 = 1 X A + 4X B +7 * C + 10*D
新二列 = 2 X A + 5 X B + 6 * C + 11 * D

您好 加权的列是这样的
d2m_NE t2m_NE …… d2m_NW t2m_NW …… d2m_SE t2m_SE …… d2m_SW t2m_SW
把所有前缀为d2m的四个列数据进行加权平均 成为新列 把所有 t2m四个列数据进行加权平均 成为新列 以此类推

用来加权平均的列是一定要包含自身吗?还是这个n列的随机四列,不一定会包含自身


import random
listN = [1,2,3,4,5,6,7,8,9,10,11]
A,B,C,D = 0.2,0.1,0.4,0.2
weight = [A,B,C,D]
res = []
# 使用random的choice,随机的选取4个值
for i in range(len(listN) - 1):
    # 先随机的选四个值
    val1 = random.choices(listN,k=4)
    s = sum(map(lambda a,b:a * b,val1,weight))
    res.append(s)
print("新列: {}".format(res))

img

如果觉得答案对你有帮助,请点击下采纳,谢谢~