0
如何通過熊貓的loc []函數來循環,這樣給定一個很長的系列,我可以將它分解成多個小系列。事我想象會像 爲i的範圍(1,10): df.loc [ '2002-I-01:' 2002-第(i + 1)-01' ]在帶熊貓數據框的距離循環中使用loc []。
其中i表示數量幾個月。
如何通過熊貓的loc []函數來循環,這樣給定一個很長的系列,我可以將它分解成多個小系列。事我想象會像 爲i的範圍(1,10): df.loc [ '2002-I-01:' 2002-第(i + 1)-01' ]在帶熊貓數據框的距離循環中使用loc []。
其中i表示數量幾個月。
考慮數據框df
df = pd.DataFrame(dict(A=range(100)), pd.date_range('2010-03-31', periods=100))
觀察你要求從一月份開始至下月初切片。典型的python切片不包括終點(雖然loc
)。我假設你打算排除它,因爲這使得這個答案方便。
使用resample
與頻率'M'
df.resample('M').sum()
A
2010-03-31 0
2010-04-30 465
2010-05-31 1426
2010-06-30 2295
2010-07-31 764
您可以通過每個月迭代
for m, grp in df.groupby(pd.TimeGrouper('M')):
# do stuff
print(m)
2010-03-31 00:00:00
2010-04-30 00:00:00
2010-05-31 00:00:00
2010-06-30 00:00:00
2010-07-31 00:00:00