【发布时间】:2020-02-07 01:12:21
【问题描述】:
我想按颜色分组,计算一列中该颜色的出现次数并创建一个新列within_range,其中包含以下情况的计数:
min_amount <= amount <= max_amount
df = pd.DataFrame({'color': ['red', 'yellow', 'blue', 'red','yellow'],
'amount': [0.5, 0.25, 0.125, 0.9, 0.8],
'min_amount': [0, 0.2, 0.1, 0.5, 0.7],
'max_amount':[1, 0.7, 0.2, 0.6, 0.9]})
可以使用以下方法计算出现次数:
df.groupby('color').agg({'color':'count'}) 但是如何得到预期的结果?
预期结果:
color count within_range
red 2 1
yellow 2 2
blue 1 1
【问题讨论】:
标签: python pandas aggregate pandas-groupby