1
我有一個數據框,我使用.aggregate({'col1': np.sum})
,這將執行col1
中的值的總和並將它們聚合在一起。是否可以執行計數,如.aggregate({'col1': some count function here})
?熊貓在數據框中的聚合計數
我有一個數據框,我使用.aggregate({'col1': np.sum})
,這將執行col1
中的值的總和並將它們聚合在一起。是否可以執行計數,如.aggregate({'col1': some count function here})
?熊貓在數據框中的聚合計數
根據您的使用情況,您可以使用'size'
,'count'
或'nunique'
。它們之間的差異是:
'size'
:計數包括NaN
和重複值。'count'
:計數不包括NaN
但包括重複。'nunique'
:唯一值的計數,不包括重複和NaN
。例如,考慮下面的數據幀:
df = pd.DataFrame({'col0': list('aabbcc'), 'col1': [1, 1, 2, np.nan, 3, 4]})
col0 col1
0 a 1.0
1 a 1.0
2 b 2.0
3 b NaN
4 c 3.0
5 c 4.0
然後,使用所描述的三個功能:
df.groupby('col0')['col1'].agg(['size', 'count', 'nunique'])
size count nunique
col0
a 2 2 1
b 2 1 1
c 2 2 2
謝謝! 'count'是我所需要的。 –
'{ 'COL1': '計數'}'或'{'COL1 ':'size'}'或'{'col1':'nunique'}'取決於你的用例。 – root
或者'len'(內置),我建議這是最可讀的。 –
'len'通常比''size'慢,因爲它是內置的python,而不是引擎蓋下的numpy。 – root