您好,欢迎来到宝玛科技网。
搜索
您的当前位置:首页pandas,对dataFrame中某一个列的数据进行处理

pandas,对dataFrame中某一个列的数据进行处理

来源:宝玛科技网
pandas,对dataFrame中某⼀个列的数据进⾏处理

背景:dataFrame的数据,想对某⼀个列做逻辑处理,⽣成新的列,或覆盖原有列的值

下⾯例⼦中的df均为pandas.DataFrame()的数据

1、增加新列,或更改某列的值

df[\"列名\"]=值

如果值为固定的⼀个值,则dataFrame中该列所有值均为这个数据

2、处理某列

df[\"列名\"]=df.apply(lambda x:⽅法名(x,⼊参2),axis=1)

说明:

1、⽅法名为单独的⽅法名,可以处理传⼊的x数据

2、x为每⼀⾏的数据,做为⽅法的⼊参1;x中的数据可以⽤【x.列名】来获取3、⼊参2等为⽅法需要的其他参数,不需要可以不写4、axis=1,表⽰每次取⼀⾏数据进⾏处理,按⾏处理

例⼦如下:

根据列title的是否包含特定词,来赋值给新的列1或0的值

bugInfo['IntegrationTest'] = bugInfo.apply(lambda x: self.bug_rule(x, \"IntegrationTest\"), axis = 1)

def bug_rule(self, frame, type): # 处理列表中的数据,更新到sql数据库中 result = \"0\"

if type == \"SmokeTest\": # 冒烟测试

if re.search(\"^\\[冒烟\\]|\\[冒烟测试\\]|【冒烟】|【冒烟测试】\", frame[\"title\"]): result = \"1\"

elif type == \"InterfaceTest\": # 接⼝测试

if re.search(\"^\\[接⼝\\]|\\[接⼝测试\\]|【接⼝】|【接⼝测试】\", frame[\"title\"]): result = \"1\"

elif type == \"IntegrationTest\": # 集成测试

if self.IntegrationTime != \"\" and self.IntegrationTime == frame[\"created_time\"]: result = \"1\" return result

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务