2016-03-02 211 views
0

目前,我有52列表示星期,我想每4列(4周)合併成一個月份。所以我需要合併並添加到新列每4列。我如何合併和添加每4列? Pandas.sum不適合我,因爲它將所有列加起來。熊貓合併,並添加列

w1 w2 w3 w4 ... w52 

1 0 0 1 ... 0 
0 1 0 0 ... 1 

我想要什麼:

w1 w2 w3 w4 ... w52 1 2 3 4 ... 12 

1 0 0 1  0 2 4 5 2 ... 4 
0 1 0 0 ... 0 1 0 3 4 ... 5 
+1

我也有類似的問題在這裏:http://stackoverflow.com/questions/32722671/pandas-combining-多列-IN-A-數據幀 – ayhan

回答

0

試試這個:

t = df.T 
t['week'] = (t.index.str[1:].astype(int) - 1).map('{:02d}'.format) 
t['month'] = pd.to_datetime(t['week'] + '-0', format='%W-%w').dt.month 

del t['week'] 

print(t.groupby('month').sum().T)