[英]Subtracting column from dataframe
嗨,我正在尝试从整个DataFrame
减去DataFrame
columns
之一的值。 直觉上,这对我来说似乎不是问题,但是我不知何故。
这是代码:
import pandas as pd
x = pd.DataFrame({
"a": range(1, 10),
"b": range(2, 11),
"c": range(11, 20)
})
print x - x['b']
我得到的是令人惊讶的:
0 1 2 3 4 5 6 7 8 a b c
0 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
1 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
4 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
5 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
6 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
7 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
8 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
而不是具有以DataFrame
columns:
(ab),(bb),(cb)。
我刚刚开始使用Python。 你能告诉我我想念什么吗?
谢谢!
尝试:
x.subtract(x['b'], axis=0)
a b c
0 -1 0 9
1 -1 0 9
2 -1 0 9
3 -1 0 9
4 -1 0 9
5 -1 0 9
6 -1 0 9
7 -1 0 9
8 -1 0 9
见文档有关的细节axis=0
参数,这确保了index
的x['B']
与对准DataFrame
index
,而不是columns
按默认值。
要使-
运算符起作用,您必须:
(x.T - x['b']).T
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.