我必须将包含在熊猫数据栏中的两个或多个列中的所有值加为一个数字。
之和不能包括数据文件中的所有数字列。
我只能像下面这样做,这在我看来很尴尬,这是问是否有更好的方法。
特别是,我想知道是否可以避免使用..sum().sum(),列出要加总的列,而不是要忽略的列。
import pandas as pd
GAINS, LOSSES, IGNORE = 'gains', 'losses', 'ignore'
df = pd.DataFrame({
GAINS : [11, 12],
LOSSES: [-1, -2],
IGNORE : [88, 99]
})
total = df[[GAINS, LOSSES]].sum().sum()
print(total)
20
发布于 2022-08-08 17:26:55
使用这样的方法:
In [610]: df[df.columns.difference(['ignore'])].sum().sum()
Out[610]: 20
在OP的评论之后编辑:
In [616]: df[df.columns.difference(['ignore'])].values.sum()
Out[616]: 20
OR
In [617]: df[df.columns.difference(['ignore'])].to_numpy().sum()
Out[617]: 20
https://stackoverflow.com/questions/73281823
复制相似问题