DataFrame.sum返回Series而不是数字

时间:2016-07-13 06:19:30

标签: python pandas

我的基本任务是采用向量x=[x1,x2,x3,x4](在我的例子中由一行Pandas数据帧表示,假设一个索引为1的行),将其乘以标量k并总结结果 - > x1*k + x2*k + x3*k + x4*k

我没有找到一个可以一步完成的功能(是否有这样的功能/操作?),所以我分两步完成。首先,我将我的向量x乘以标量k,然后我总结结果:

x_by_k = my_df.loc[[1]]*k
sum = x_by_k.sum(axis=1)

我遇到的一个问题是生成的sum属于Series类型,但实际上它是一个数字。

有没有办法用数字作为输出执行此求和操作?

我可以一步完成上述步骤吗?

1 个答案:

答案 0 :(得分:2)

IIUC选择df的行ix,然后sumk的多个行:

df = pd.DataFrame({'A':[1,2,3],
                   'B':[4,5,6],
                   'C':[7,8,9]})

print (df)
   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

k = 2
sum = df.ix[1].sum()* k
print (sum)
30