我有一些pandas DataFrames,我正在尝试找到一种很好的方法来计算和绘制每个唯一条目在DataFrame中发生的次数。例如,如果我有以下2个DataFrames:
year month
0 1900 1
1 1950 2
2 2000 3
year month
0 1900 1
1 1975 2
2 2000 3
我想也许有一种方法可以将它们组合到一个DataFrame中,同时使用新列counts
来跟踪year + month
的唯一组合在任何一个中发生的次数DataFrames。从那里我想我可以将year + month
组合与其相应的计数进行分散。
year month counts
0 1900 1 2
1 1950 2 1
2 2000 3 2
3 1975 2 1
有没有很好的方法来实现这个目标?
答案 0 :(得分:1)
concat
然后使用groupby
agg
pd.concat([df1,df2]).groupby('year').month.agg(['count','first']).reset_index().rename(columns={'first':'month'})
Out[467]:
year count month
0 1900 2 1
1 1950 1 2
2 1975 1 2
3 2000 2 3