• pandas入门学习


    #两列互换
    
    In [35]: cond = df.a > df.b 
    
    In [36]: df.loc[cond, ['a', 'b']] = df.loc[cond, ['b', 'a']].values 
    
    In [37]: df 
    Out[37]: 
        a b 
    0 1 3 
    1 2 4 
    2 0 2 
    3 1 6 
    

    https://www.cnblogs.com/oklizz/p/11766788.html  pandas速查手册

    https://www.pypandas.cn/docs/getting_started/tutorials.html#%E5%AE%98%E6%96%B9%E6%8C%87%E5%8D%97    官方指南中文版

    方法目录

     panda 速查手册

     

    df.drop(df.columns[0:3], axis=1, inplace=True) # 删除前3列

    df.drop(df.index[0:3], inplace=True) # 删除前3行

    df[df.isna().values] 现实空值

    df.loc[:,(df != 0).all(axis='index')]     去除全为0的列

    df[df[2].str.len()==11]        查找手机号是11位的人

    dfmeiwen[4].value_counts()         计数出现次数

    df[2]=df[2].astype('str') df.dropna(thresh=10) 删除空值 超过十个空值才删 ANY 只要有就删除

    df.drop_duplicates(["k1"])    删除重复行    默认保留第一行
    df.drop_duplicates(["k1","k2"], take_last=True)


    df=df.reindex([x for x in range(20)]) 重新设置索引 索引值如果多 就生成NAN 返回一个DATAFRAME 所以要用df再接受一下

    df.loc[(df[7]>36)&df[3].str.contains('平顶山')].sort_values(by=7)            df.loc[lambda df:(df[7]>36)&df[3].str.contains('平顶山')]        

        def ceshi(x):
              return x[7]>36&df[3].str.contains('平顶山')
        df.loc[ceshi]  这都是一样的结果

    loandata['term']=loandata['term'].map(str.strip)   去除两边空格
    loandata['term']=loandata['term'].map(str.title)     转化大写  首字母
    df.loc[df[5]=='豫DD5166'].dun.sum()    条件求和

    def yujing(x):
        if x[7]>36.7:
            return '报警'
        else:
            return '正常'
    df.loc[:,'温度情况']=df.apply(yujing,axis=1)
    df[df['温度情况']=='报警']

    df.sort_values(by=17)    排序

    df.loc['a', :]   df 后面是标签索引      df.loc[df[11]=='工作']     df[df[11]=='工作']     两个结果相同
    #pandas 链接MYSQL数据库
    import pandas as pd
    from sqlalchemy import create_engine
    
    engine=create_engine('mysql+pymysql://username:password@ip:port/database')
    
    sql='''select id,dataid,plateno,lane_id,whole_weight,limit_weight,whole_over
    from oses_over2020 limit 1000'''
    df=pd.read_sql_query(sql,engine)
  • 相关阅读:
    linux
    网络编址
    抽象类 接口
    mysql
    java
    [lyu]Mysql解压版安装教程
    Mysql出现拒绝本地账户访问的情况副本
    js
    Redis限流和GeoHash
    布隆过滤器
  • 原文地址:https://www.cnblogs.com/xupanfeng/p/12650274.html
Copyright © 2020-2023  润新知