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

yipeiwu_com6年前Python基础

背景: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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python的Twisted框架上手前所必须了解的异步编程思想

Python的Twisted框架上手前所必须了解的异步编程思想

前言 最近有人在Twisted邮件列表中提出诸如"为任务紧急的人提供一份Twisted介绍"的需求。值得提前透露的是,这个系列并不会如他们所愿。尤其是介绍Twisted框架和基于Pyth...

轻松实现TensorFlow微信跳一跳的AI

轻松实现TensorFlow微信跳一跳的AI

作为python和机器学习的初学者,目睹了AI玩游戏的各种风骚操作,心里也是跃跃欲试。 然后发现微信跳一跳很符合需求,因为它不需要处理连续画面(截屏太慢了)和复杂的操作,很适合拿来练手。...

python中join()方法介绍

描述 Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。 语法 join()方法语法: str . join ( sequence ) 参数 sequ...

使用tensorflow实现线性回归

使用tensorflow实现线性回归

本文实例为大家分享了tensorflow实现线性回归的具体代码,供大家参考,具体内容如下 一、随机生成1000个点,分布在y=0.1x+0.3直线周围,并画出来 import ten...

Python压缩和解压缩zip文件

zip文件是我们经常使用的打包格式之一,python解压和压缩zip效率非凡。 python解压zip文档: 复制代码 代码如下: #/usr/bin/python #coding=ut...