您可以使用value_counts
和rename_axis
與reset_index
:
df1 = df['Company'].value_counts()
.rename_axis('Company').reset_index(name='No: of Companies')
print (df1)
Company No: of Companies
0 BCD 3
1 ABC 2
另一種解決方案與groupby
和聚合size
,最後reset_index
:
df1 = df.groupby('Company').size().reset_index(name='No: of Companies')
print (df1)
Company No: of Companies
0 BCD 3
1 ABC 2
如果需要數Date
列:
df1 = df['Date'].value_counts().rename_axis('Date').reset_index(name='No: of Days')
print (df1)
Date No: of Days
0 2017-09-16 3
1 2017-09-17 2
df1 = df.groupby('Date').size().reset_index(name='No: of Days')
print (df1)
Date No: of Days
0 2017-09-16 3
1 2017-09-17 2
編輯:
如果需要計數對Date
和Company
列:
df1 = df.groupby(['Date', 'Company']).size().reset_index(name='No: of Days per company')
print (df1)
Date Company No: of Days per company
0 2017-09-16 BCD 3
1 2017-09-17 ABC 2
你是不是在所有使用 '日期' 列? – wingsforever
@MohanRaj - 我爲'date'列添加解決方案,但輸出不同。 – jezrael
我只想要一個只有2列的數據框 - 公司和日期 – wingsforever