jma*_*tos 6 python numpy dataframe pandas
如何在保持DataFrame结构完整的同时从DataFrame中减去Series?
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
Run Code Online (Sandbox Code Playgroud)
我想要的是相当于从DataFrame中减去一个标量
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
Run Code Online (Sandbox Code Playgroud)
DSM*_*DSM 11
也许:
>>> 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]
Run Code Online (Sandbox Code Playgroud)
或者,对于一个更有趣的例子:
>>> 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]
Run Code Online (Sandbox Code Playgroud)