zoukankan      html  css  js  c++  java
  • pandas笔记

    1、isin用法,可结合&、|使用>、==等:
    
    df_isin = df[df['工单号'].isin([1, 2, 3])]
    
    2、查询A列,修改B列
    
    df[df['告警类型'] == '网络',  '业务线'] = '数据库' #查询列:告警类型,值为网络的目标,目标列:业务线的值改为‘数据库’
    
    3、正则剔除匹配的数据
    
    regx = '.*大数据分析平台.*(CPU|memory|Filesystem space)$'
    
    df = df[~df['流程实例标题'].str.match(regx)]
    
    4、指定位置插入列
    
    df.insert(2, '是否超时', '哈哈') #第二列后插入列名为‘是否超时’, 值为‘哈哈 ’’
    
    5、时间转换
    
    df.to_datetime('2020-11-30 00:00:00,, format='%Y/%m/%d')
    
    6、删除行列
    
    df.drop('col1', axis=1) #axis=1表示删除列,axis=0表示删除行
    
    7、ffill向下填充空值
    
    col = ['A', 'B', 'C']
    
    df[col].ffill()
    
    8、去重
    
    # 审批历时单位转换及重复数据筛选, 如:原始数据:[1, 2, 2, 3, 3]
    
    a = df.drop_duplicates(subset=[filtername], keep='first') # 保留一条重复数据 结果: [1, 2, 3]
    
    b = df.drop_duplicates(subset=[filtername], keep=False) # 所有重复数据都删掉 结果:[1]
    
    c = a.append(b).drop_duplicates(subset=[filtername], keep=False) # 去除重复数据 结果:[2, 3]
    
    9、筛选求和
    
    df[df['工单号'] == 100]['任务时长'].sum() #列:工单号为100的目标,对列:任务时长求和
    
    10、迭代
    
    for index, row in df.iterrows():
    
      print(index, row['工单号'])
    
    11、map结合lambda
    
    data["gender"] = data["gender"].map({"":1, "":0}) #列男改为1,列女改为0
    
    df['处理时长'].map(lambda x: x/(60*60)) #列处理时长所有值进行lambda表达式操作
    
     12、重命名列
    
    df.rename(columns={'审批历史': '累计时长'})
  • 相关阅读:
    Pandas注意事项&窍门
    Pandas稀疏数据
    Pandas IO工具
    (bc 1002)hdu 6016 count the sheep
    (bc 1001) hdu 6015 skip the class
    hdu 1874 畅通工程续(迪杰斯特拉优先队列,floyd,spfa)
    克鲁斯卡尔(并查集)hdu 1233
    克鲁斯卡尔算法(最短路算法详解)
    最小生成树(普利姆算法、克鲁斯卡尔算法)
    pair 对组
  • 原文地址:https://www.cnblogs.com/Fmaj7/p/14062122.html
Copyright © 2011-2022 走看看