【发布时间】:2021-09-07 20:12:57
【问题描述】:
我有一个数据框,其中包含多个具有数字浮点值的列。我想做的是给每一列赋予分数权重并计算其平均值以存储并将其附加到相同的df。
假设我们有以下列:s1、s2、s3 我想分别给他们权重:w1、w2、w3
我可以在尝试所有手头的值时手动执行此操作。但是当我使用列表格式时,它给了我一个错误。 我试图通过迭代来做到这一点,我在下面附上了我的代码,但它给了我一个错误。我还附上了我的手动代码,它有效,但它需要第一手资料。
无效的代码:
score_df["weighted_avg"] += weight * score_df[feature]
适用于列表但不适用于列表的手动代码:
df["weighted_scores"] = 0.5*df["s1"] + 0.25*df["s2"] + 0.25*df["s3"]
【问题讨论】:
标签: python pandas dataframe weighted-average