zoukankan      html  css  js  c++  java
  • 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
     
  • 相关阅读:
    百度mp3地址解密码
    VB 在EXE后附加信息
    截屏函数
    Base64和StrToByte
    The Android ION memory allocator, DMABUF is mentioned as well
    DDC EDID 介绍
    Memory management for graphic processors TTM的由来
    科普 写display driver的必看 How video card works [2D的四种主要操作]
    GEM vs TTM
    DMABUF 背景介绍文章 Sharing buffers between devices
  • 原文地址:https://www.cnblogs.com/meitian/p/10568077.html
Copyright © 2011-2022 走看看