根据另一列平均 python 数据框列

Average a python dataframe column based on another column

当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)

df['col_a' > 5]

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

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