2013-12-11 54 views
5

如何從DataFrame中減去一個Series,同時保持DataFrame結構不變?從DataFrame中減去一個Series,同時保持DataFrame結構不變

df = pd.DataFrame(np.zeros((5,3))) 
s = pd.Series(np.ones(5)) 

df - s 
    0 1 2 3 4 
0 -1 -1 -1 NaN NaN 
1 -1 -1 -1 NaN NaN 
2 -1 -1 -1 NaN NaN 
3 -1 -1 -1 NaN NaN 
4 -1 -1 -1 NaN NaN 

我想什麼有是從數據幀

df - 1 
    0 1 2 
0 -1 -1 -1 
1 -1 -1 -1 
2 -1 -1 -1 
3 -1 -1 -1 
4 -1 -1 -1 

回答

9

也許減去標量相當於:

>>> df = pd.DataFrame(np.zeros((5,3))) 
>>> s = pd.Series(np.ones(5)) 
>>> df.sub(s,axis=0) 
    0 1 2 
0 -1 -1 -1 
1 -1 -1 -1 
2 -1 -1 -1 
3 -1 -1 -1 
4 -1 -1 -1 

[5 rows x 3 columns] 

,或者一個更有趣的例子:

>>> s = pd.Series(np.arange(5)) 
>>> df.sub(s,axis=0) 
    0 1 2 
0 0 0 0 
1 -1 -1 -1 
2 -2 -2 -2 
3 -3 -3 -3 
4 -4 -4 -4 

[5 rows x 3 columns] 
相關問題