吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4480|回复: 32
收起左侧

[求助] python如何实现pandas 中两行相加

[复制链接]
ymhld 发表于 2020-5-16 10:28
本帖最后由 ymhld 于 2020-5-16 15:00 编辑

如何实现两行直接相加
列的会,data['列1']=data['列2']+data['列3']
有没有行直接相加的方法
如下代码也能实现N1+N2
[Python] 纯文本查看 复制代码
import pandas as pd
chengji = [['N', 95,0], ['N', 100,88], ['N', 88,100],['N', 66,0]]
data=pd.DataFrame(chengji ,columns=['p','x','g'])
data1=data[['p','x']].copy()
data1['p']=data1.index.map(lambda x:"N"+str(x+1))
print(data1)

data.loc[:,'p']=data.index.map(lambda x:"N"+str(x+1))
# print(data)
# data.columns=['p','营业成本本年累计','营业收入本年累计',]
# print(data)
# data['Q']=0
# data.loc[data['营业收入本年累计']!=0,'Q']=data['营业成本本年累计']/data['营业收入本年累计']
print(data)
heji=['N1+N2',['N1','N2']]


print(data.loc[data['p'].isin(heji[1])])
data.loc[heji[0]]=data.loc[data['p'].isin(heji[1])].sum()
data.loc[heji[0],'p']=heji[0]

print(data)
data.drop(data['p'].isin(heji[1]),inplace=True)
print(data)

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

zyzs010 发表于 2020-5-16 11:03
可以goupby吗,再用聚合函数
 楼主| ymhld 发表于 2020-5-16 11:04
zyzs010 发表于 2020-5-16 11:16
ymhld 发表于 2020-5-16 11:04
想法是直接相加,有没有办法

我对这也不熟悉,我感觉是可以的,numpy里面两个一维数组直接相加还是一个一维数组。
 楼主| ymhld 发表于 2020-5-16 11:27
zyzs010 发表于 2020-5-16 11:16
我对这也不熟悉,我感觉是可以的,numpy里面两个一维数组直接相加还是一个一维数组。

不是数组相加,是两行相加,不知道怎么弄
制冷设备 发表于 2020-5-16 11:59
ymhld 发表于 2020-5-16 11:27
不是数组相加,是两行相加,不知道怎么弄

将原矩阵转置,行列互换后进行列相加,应该就可以实现原矩阵的行相加。
 楼主| ymhld 发表于 2020-5-16 12:11
制冷设备 发表于 2020-5-16 11:59
将原矩阵转置,行列互换后进行列相加,应该就可以实现原矩阵的行相加。

这方法倒是能实现,还有没有直接行相加的办法呢
rsnodame 发表于 2020-5-16 14:47
如果是相隔等距的行做运算(比如算同比),直接用 shift方法就行
https://www.jb51.net/article/150937.htm

不规则的话,那就多用几次shift
 楼主| ymhld 发表于 2020-5-16 14:58
rsnodame 发表于 2020-5-16 14:47
如果是相隔等距的行做运算(比如算同比),直接用 shift方法就行
https://www.jb51.net/article/150937.ht ...

不规则的,因为是要汇总两行,然后把原来的去掉
Qnly_genius 发表于 2020-5-16 16:52
[Python] 纯文本查看 复制代码
# 第0行 = 第0行 + 第1行
df.loc[0] = df.loc[0] + df.loc[1]


这样行不?

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
ymhld + 1 + 1 谢谢@Thanks!

查看全部评分

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 16:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表