gpt4 book ai didi

python - 除了一只 Pandas ,所有行总和

转载 作者:太空狗 更新时间:2023-10-30 00:22:43 24 4
gpt4 key购买 nike

我在 PostgreSQL 数据库上有几个表,看起来或多或少像这样:

gid      col2       col1        col3
6 15 45 77
1 15 45 57
2 14 0.2 42
3 12 6 37
4 9 85 27
5 5 1 15

对于每个表,数字和列的名称都会改变(我在 python 中循环创建它们)。

我想为每个表返回另一个名为 sum 的列,其中包含除 gid 之外的每个 calumn 的总和。目标是有这样的东西:

gid     col2       col1        col3     sum 
6 15 45 77 137
1 15 45 57 117
2 14 0.2 42 56.2
3 12 6 37 55
4 9 85 27 121
5 5 1 15 21

我不能使用列名:唯一没有变化的是 gid

想用 python(pandasnumpy)或 psql 实现吗?

最佳答案

使用drop + sum :

df['sum'] = df.drop('gid', axis=1).sum(axis=1)
print (df)
gid col2 col1 col3 sum
0 6 15 45.0 77 137.0
1 1 15 45.0 57 117.0
2 2 14 0.2 42 56.2
3 3 12 6.0 37 55.0
4 4 9 85.0 27 121.0
5 5 5 1.0 15 21.0

如果 gid 总是第一列,选择 iloc所有列没有 first and then sum them:

df['sum'] = df.iloc[:, 1:].sum(axis=1)
print (df)
gid col2 col1 col3 sum
0 6 15 45.0 77 137.0
1 1 15 45.0 57 117.0
2 2 14 0.2 42 56.2
3 3 12 6.0 37 55.0
4 4 9 85.0 27 121.0
5 5 5 1.0 15 21.0

关于python - 除了一只 Pandas ,所有行总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44003371/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com