Python 统计每月参赛人数
我有一个df格式:Python 统计每月参赛人数,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个df格式: start end 0 2020-01-01 2020-01-01 1 2020-01-01 2020-01-01 2 2020-01-02 2020-01-02 ... 57 2020-04-01 2020-04-01 58 2020-04-02 2020-04-02 我想计算每个月的条目数量,并将其放入新的df中,即1月、2月等的“开始”条目数量,以提供: Month Entries 2020-01
start end
0 2020-01-01 2020-01-01
1 2020-01-01 2020-01-01
2 2020-01-02 2020-01-02
...
57 2020-04-01 2020-04-01
58 2020-04-02 2020-04-02
我想计算每个月的条目数量,并将其放入新的df中,即1月、2月等的“开始”条目数量,以提供:
Month Entries
2020-01 3
...
2020-04 2
我目前正在尝试类似的东西,但这不是我需要的:
df.index = pd.to_datetime(df['start'],format='%Y-%m-%d')
df.groupby(pd.Grouper(freq='M'))
df['start'].value_counts()
用于:
@RFCStreamsHD请不要忘记对答案进行投票。
In [1282]: df
Out[1282]:
start end
0 2020-01-01 2020-01-01
1 2020-01-01 2020-01-01
2 2020-01-02 2020-01-02
57 2020-04-01 2020-04-01
58 2020-04-02 2020-04-02
# Do this only when your `start` and `end` columns are object. If already datetime, you can ignore below 2 statements
In [1284]: df.start = pd.to_datetime(df.start)
In [1285]: df.end = pd.to_datetime(df.end)
In [1296]: df1 = df.groupby([df.start.dt.year, df.start.dt.month]).count().rename_axis(['year', 'month'])['start'].reset_index(name='Entries')
In [1297]: df1
Out[1297]:
year month Entries
0 2020 1 3
1 2020 4 2