Python/Pandas在列中减去数字
抱歉,如果这是个愚蠢的问题 我有一个熊猫数据框,看起来像这样:Python/Pandas在列中减去数字,python,pandas,Python,Pandas,抱歉,如果这是个愚蠢的问题 我有一个熊猫数据框,看起来像这样: Col1 Col2 0 217 287 130 我试图减去第2列中的两个数字,如果我理解你的问题,你想这样做: res = dataFrame['Col2'][0] - dataFrame['Col2'][1] 如果这不是您要问的问题,请在下面修正您的问题或评论。如果您试图在Col2中的所有元素之间进行减法运算,您可以执行以下操作: sub = df['Col2'].diff() sub将是一个系列,其中
Col1 Col2
0 217
287 130
我试图减去第2列中的两个数字,如果我理解你的问题,你想这样做:
res = dataFrame['Col2'][0] - dataFrame['Col2'][1]
如果这不是您要问的问题,请在下面修正您的问题或评论。如果您试图在Col2中的所有元素之间进行减法运算,您可以执行以下操作:
sub = df['Col2'].diff()
sub将是一个系列,其中:
Col2
NaN
-87
您可以.sum()
列中的值,并从df.loc[0]处的第一个值中减去该值。
df
Col1 Col2
0 0 217
1 278 130
df.loc[0] - df.loc[1:].sum()
输出:
Col1 -278
Col2 87
dtype: int64
如果您只想将此应用于Col2
:
df['Col2'].loc[0] - df['Col2'].loc[1:].sum()
输出:
87
Col1 -693
Col2 -204
dtype: int64
您可以在数据框中的任意行上使用此选项:
Col1 Col2
0 0 217
1 278 130
2 23 45
3 22 123
4 370 123
df.loc[0] - df.loc[1:].sum()
输出:
87
Col1 -693
Col2 -204
dtype: int64
如果数据框中有10000行,会发生什么?我认为问题比这简单。OP问:我正在尝试减去第2列中的两个数字,如果他只想减去两个数字,我不知道为什么要加上10000行。我承认这个问题有点模棱两可。对不起,虽然我的问题只要求一列中的两个数字,但如@JoeR所说,知道如何在一列中减去多个数字也会很有帮助。我的问题得到了回答,谢谢你的回答!如果有更多的行,
。diff()
将不会继续减法。它只会显示两个数字之间的差异。