平均基于另一列的python数据框列

时间:2020-08-06 21:49:18

标签: python dataframe conditional-statements average

当a列中的对应值> 5时,我想取b列的平均值

我收到错误消息:

TypeError:'str'和'int'实例之间不支持'>'

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b = [0.05, 0.05, 0.05, 0.04, 0.03, 0, 0, 0, 0, 0.03]

d = {'col_a': a, 'col_b': b}
df = pd.DataFrame(d)

x = df['col_a' > 5]['col_b'].mean()
print(x)

1 个答案:

答案 0 :(得分:3)

df['col_a' > 5]

这会尝试检查字符串'col_a'是否为> 5,这是无法完成的。

您的意思是df[df['col_a'] > 5]['col_b'].mean()