按月“拆分”数据帧

时间:2019-03-20 19:14:56

标签: python pandas dataframe

我有一个包含5列的数据框。其中之一是“天”列,其中包含每个寄存器的日期。它有很多年,从几年前到今天。

例如(MM / DD / YYYY)格式:

c1 c2 c3 day        c4
a  b  c  01-01-2018 d
e  f  g  01-02-2018 h
... more data from january 2018, then starting another month
i  j  k  02-01-2018 l

我需要做什么: 我需要“拆分” /“选择”每个月的数据并将其上传到服务器中。我不确定该怎么做。我以为是按月拆分数据框。我怎样才能做到这一点?如果问题不清楚,我可以再举一个例子。

谢谢。

1 个答案:

答案 0 :(得分:1)

groupbyGrouper一起使用:

# sample data
df = pd.DataFrame(pd.date_range('2018-01-01', '2018-03-01'), columns=['Date'])
# groupby your key and freq
g = df.groupby(pd.Grouper(key='Date', freq='M'))
# groups to a list of dataframes with list comprehension
dfs = [group for _,group in g]

您可以遍历每个月的组列表:

dfs[0]

       Date
0 2018-01-01
1 2018-01-02
2 2018-01-03
3 2018-01-04
4 2018-01-05