zoukankan      html  css  js  c++  java
  • 第十三节 pandas分组和分组统计以及多数据源合并

    import pandas as pd
    pd.options.display.max_rows = 10  # 设置显示行数
    
    df1 = pd.read_csv(r'E:anacondatestPythonData高校信息.csv', encoding='gbk', index_col='学校名称')
    
    # 数据拆分,生成的是分组索引标记,而不是新的DF
    df2g = df1.groupby('类型')
    # print(df1g.groups)  # 查看分类详情
    # print(df1g.describe())  # 查看简单的数据统计描述,均值,最大值,最小值,标准差等等
    df3g = df1.groupby(['类型', '所在省份'])
    print(df3g.mean())  # 对分类后的数据进行平均数统计
    '''
               名次     总分
    类型 所在省份             
    农林 北京    60.0  65.92
       广东    95.0  63.64
       江苏    46.0  65.90
       湖北    49.0  65.77
    '''
    
    df2g.get_group('农林').mean()
    df3g['名次'].max()
    
    # 分组汇总
    df3g.agg('count')
    df3g.agg('size')
    df3g.agg('sum', 'median')
    df3g.agg('std')
    df3g.agg('max')
    
    # 长型和宽型数据转换
    df3 = pd.read_excel(r'E:anacondatestPythonData儿童生长研究.xlsx', index_col=[0, 2])
    df3s = df3.stack()
    
    # 长宽型格式自由转换
    df3s.unstack([1, 2])
    
    # 数据转置
    print(df3.T)
    
    # 数据纵向合并,如果合并多个,束脚裤放在列表里
    df4 = df1.append(df3, ignore_index=False, verify_integrity=False)  # 要注意索引值是否会重复,ignore_index添加时忽略索引,verify_integrity是否检查索引唯一性
    df5 = df1.append([df3, df3])
    
    # 数据的横向合并
    pd.merge(df3, df3)
  • 相关阅读:
    第三次冲刺
    第二次冲刺
    第一次冲刺
    团队学习
    git and github
    还不够格的程序员
    CF1602F. Difficult Mountain
    线性基
    欧拉回路学习笔记
    莫比乌斯反演-学习笔记
  • 原文地址:https://www.cnblogs.com/kogmaw/p/12563309.html
Copyright © 2011-2022 走看看