博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Pandas 第二部分
阅读量:4562 次
发布时间:2019-06-08

本文共 16815 字,大约阅读时间需要 56 分钟。

1 import numpy as np  2 import pandas as pd  3   4 df = pd.read_excel("d:/test.xlsx")  5 if 0 :  6     print(df.dtypes)  #查看数据的列的类型  7     pass  8   9 #查找一个条目 并删除 10 if 0: 11     # 查找一个条目 12     print(df[(df['年龄'] == 18) & (df['姓名'] == '李四')]) 13     # 删除它 14     df.drop([62], inplace=True) 15     print(df[60:64])  # 发现62 已经没有了 16  17     #因为上面删除了一些条目,所以index 就不会连续了 18     #然后重新更新它的index 19     df.index = range(len(df)) 20  21 #数据格式的  查看(dtype ) 与 装换 astype() 22 if 0: 23     #查看格式  dtype 24     if 0: 25         print(df["年龄"].dtype )  #int64 26         print(df['姓名'].dtype)   #object 27         print(df["学号"].dtype )  #int64 28         print(df["工资"].dtype )  #float64 29         pass 30     #将年龄转为 浮点格式 astype() 31     if 0: 32         df['年龄'] = df['年龄'].astype(float) #默认指的是float64 33         print(df.dtypes) 34         pass 35     #将工资转为整数格式  astype() 36     if 0: 37         df['工资'] = df['工资'].astype(int)  #int 指的是int32 38         print(df.dtypes) 39         pass 40     pass 41  42 #排序 43 if 0: 44     #默认排序 45     if 0: 46         #默认排序是按照index 来的 47         pass 48     #按照年龄排序 49     if 0: 50         if 0: 51             print( df.sort_values(by='年龄') )   #默认是升序 52         #降序排列 53         print(df.sort_values(by='年龄',ascending = False) ) 54  55         pass 56     #按照学号排序 57     if 0: 58         print(df.sort_values(by='学号',ascending = False )) 59         pass 60  61     #多个值排序 ,先按照学号 ,再按照年龄 62     if 0: 63         print( df.sort_values(by=['学号','年龄'])  ) 64         pass 65  66  67  68     pass 69  70 #基本统计分析 71 if 0: 72     # 1,描述性统计 73     if 0: 74         res = df.describe()  #对df 中的数值提供描述性统计 75         print(res) 76         #而且,我们往往还可以在描述性统计中的极值中发现异常的数值 77         pass 78     # 2,最值 79     if 0: 80         ret = df['年龄'].min() 81         print(ret) 82  83         ret = df['年龄'].max() 84         print(ret) 85  86         ret = df['工资'].min() 87         print(ret) 88  89         ret = df['工资'].max() 90         print(ret) 91         pass 92     # 3,均值和中值 93     if 0: 94         ret = df['年龄'].mean() 95         print(ret) 96  97         ret = df['年龄'].median() 98         print(ret) 99 100         pass101     # 4,方差和标准差102     if 0:103         ret = df['工资'].var() #方差104         print(ret)105 106         ret = df['工资'].std() #方差 = 标准差的平方107         print(ret )108         pass109     # 5,求和110     if 0:111         ret = df['工资'].sum()112         print(ret)113         pass114     # 6,相关系数,协方差   #这就涉及到两个变量了115     if 0:116         ret = df[['年龄','工资' ]].corr()  #相关系数117         print(ret)118 119         ret = df[['年龄','工资']].cov()  #协方差120         print(ret)121 122         pass123     # 7,计数124     if 1:125         #算多少行126         if 0:127             ret = len(df)128             print(ret)129         if 0:130             #算有多少个人131             ret = df['姓名'].unique()132             print(ret)133             print(len(ret))  #9 个人134 135             if 0:  # 现在要解决  张三和 张昌博是同一个人的问题 ,136                 df['姓名'].replace('张三','张昌博',inplace=True    )137                 ret = df['姓名'].unique()138                 print(ret)  #这时就得到了 正确的所有的人139 140                 #一次替换多个值  (用列表表示  )141                 if 0 :142                     df['姓名'].replace(['张昌博','李四'],['张三','李大四'],inplace=True)143                     print(df['姓名'].unique())144                 pass145 146             pass147 148         if 0:149             #算出每个姓名都有多少行  value_counts()150             ret = df['姓名'].value_counts()  #默认是从大到小151             print(ret)152             pass153         pass154     pass155 156 #保存数据157 if 0:158     df.to_excel("d:/test03.xlsx")159     pass160 161 162 #数据透视163 if 0:164     #Excel 的数据透视表使用的非常广泛 ,Pandas 也提供了数据透视表的功能,名为pivot_table 。165 166     #1,基本形式167     if 0:168         ret = pd.pivot_table(df,index=['学号'])169         #默认进行的聚合计算是  均值计算170         print(ret)171         #如何解决显示不全的问题172         if 0:173             pd.set_option('max_columns',100) #最大 100 列174             pd.set_option('max_rows',500)  #最大 500行175             print(ret)176 177 178 179         pass180     # 2,也可以有多个索引。实际上,大多数的pivot_table 参数可以通过列表获取多个值181     if 0:182         ret = pd.pivot_table(df,index = ['学号','姓名'])183         print(ret)184         pass185 186     # 3,也可以制定需要统计汇总的数据187     if 0:188         #在 2 的基础上  ,但是我们只需要工资那一列就好了189         ret = pd.pivot_table(df,index=['学号','姓名'],values='工资')190         print(ret)191         pass192     # 4,还可以指定函数,来统计不同的统计值193     if 0:194         #注意:aggfunc 去制定  计算的方式,默认是取 平均值195         if 0:196             ret = pd.pivot_table(df,index=['学号','姓名'],values='工资',aggfunc=np.sum )197             print(ret)198             pass199 200         if 0:201             #values 也可以是多个202             ret = pd.pivot_table(df,index='姓名',values=['年龄','工资'],aggfunc=np.sum)203             print(ret)204             pass205 206     # 5,非数值NaN  难以处理 ,如果要移除它们 ,可以使用“fill_value ” 将其设置为0207     if 0:208         #aggfunc 也可以是多个209         if 0:210             ret = pd.pivot_table(df,index=['姓名'],aggfunc=[np.sum,np.mean])211             print(ret)212 213         ret = pd.pivot_table(df,index='姓名',aggfunc=[np.sum],fill_value=0)214         print(ret)215         pass216     # 6,加入margins = True  可以在下方显示一些总和数据217     if 0:218         ret = pd.pivot_table(df,index='姓名',aggfunc=[np.sum],margins=True)219         print(ret)220         pass221     pass222     # 7,对不同值执行不同的函数:可以向 aggfunc传递一个字典。不过,这样有个副作用,就是必须将标签做的更加简洁才行223     if 0:224         #对工资求综合 ,对年龄求均值225         ret = pd.pivot_table(df,index='姓名',values=['工资','年龄'],aggfunc={
'工资':np.sum,'年龄':np.mean })226 print(ret)227 pass228 229 #数据透视表的过滤230 if 0:231 ret = pd.pivot_table(df,index='姓名',values=['工资','年龄'],aggfunc={
'工资':np.sum,'年龄':np.mean} )232 # print(ret)233 # print(type(ret)) #
234 235 if 0:236 print(ret[:5]) #前 五行237 pass238 if 0:239 ret = ret [ ret.index == '张昌博']240 print(ret)241 242 if 0:243 ret = ret.sort_values('工资',ascending=False )244 print(ret)245 pass246 247 pass248 249 #数据透视 对多个索引来进行 汇总 下次课更详细的讲 250 if 0:251 ret = pd.pivot_table(df,index=['学号','姓名'],values=['工资','年龄'],aggfunc={
'工资':np.sum,'年龄':np.mean} )252 print(ret)253
View Code

 

 

相应的excel 数据:

学号    姓名    年龄    工资17096218    张三    28    12345.2317096218    张三    19    13345.2317096218    张三    20    14345.2317096221    张三    21    15345.2317096222    张三    22    16345.2317096223    张三    23    17345.2317096224    张三    24    18345.2317096225    张三    25    19345.2317096226    张三    26    20345.2317096227    张三    27    21345.2317096227    张三    28    22345.2317096227    张三    29    23345.2317096230    张三    30    24345.2317096231    张三    31    25345.2317096232    张三    32    26345.2317096233    张三    33    27345.2317096234    张三    34    28345.2317096235    张三    35    29345.2317096236    张三    36    30345.2317096237    张三    37    31345.2317096238    张三    38    32345.2317096239    张三    39    33345.2317096240    张三    40    34345.2317096241    张三    41    35345.2317096242    张三    42    36345.2317096243    张三    43    37345.2317096244    张三    44    38345.2317096245    张三    45    39345.2317096245    张三    46    40345.2317096245    张三    47    41345.2317096245    张三    48    42345.2317096245    张三    49    43345.2317096250    张三    50    44345.2317096251    张三    51    45345.2317096252    张三    52    46345.2317096253    张昌博    18    47345.2317096254    张昌博    19    48345.2317096255    张昌博    20    49345.2317096256    张昌博    21    50345.2317096257    张昌博    22    51345.2317096258    张昌博    23    52345.2317096258    张昌博    24    53345.2317096258    张昌博    25    54345.2317096258    张昌博    26    55345.2317096258    张昌博    27    56345.2317096263    张昌博    28    57345.2317096264    张昌博    29    58345.2317096265    张昌博    30    59345.2317096266    张昌博    31    60345.2317096267    张昌博    32    61345.2317096268    张昌博    33    62345.2317096269    张昌博    34    63345.2317096270    张昌博    35    64345.2317096271    张昌博    36    65345.2317096272    张昌博    37    66345.2317096273    张昌博    38    67345.2317096274    张昌博    39    68345.2317096275    张昌博    40    69345.2317096276    张昌博    41    70345.2317096277    张昌博    42    71345.2317096278    张昌博    43    72345.2317096279    张昌博    44    73345.2317096280    李四    18    74345.2317096281    李四    19    75345.2317096281    李四    20    76345.2317096281    李四    21    77345.2317096281    李四    22    78345.2317096281    李四    23    79345.2317096281    李四    24    80345.2317096281    李四    25    81345.2317096288    李四    26    82345.2317096289    李四    27    83345.2317096290    李四    28    84345.2317096291    李四    29    85345.2317096292    李四    30    86345.2317096293    李四    31    87345.2317096294    李四    32    88345.2317096295    李四    33    89345.2317096296    李四    34    90345.2317096297    李四    35    91345.2317096298    李四    36    92345.2317096299    李四    37    93345.2317096300    李四    38    94345.2317096301    李四    39    95345.2317096302    李四    40    96345.2317096303    李四    41    97345.2317096304    李四    42    98345.2317096305    李四    43    99345.2317096306    李四    44    100345.2317096307    李四    45    101345.2317096308    李四    46    102345.2317096309    李四    47    103345.2317096310    李四    48    104345.2317096311    李四    49    105345.2317096312    李四    50    106345.2317096313    李四    51    107345.2317096314    李四    52    108345.2317096315    李四    53    109345.2317096316    李四    54    110345.2317096317    李四    55    111345.2317096318    李四    56    112345.2317096319    李四    57    113345.2317096320    李四    58    114345.2317096321    李四    59    115345.2317096322    李四    60    116345.2317096323    李四    61    117345.2317096324    李四    62    118345.2317096325    李四    63    119345.2317096326    王五    18    120345.2317096327    王五    19    121345.2317096328    王五    20    122345.2317096329    王五    21    123345.2317096330    王五    22    124345.2317096331    王五    23    125345.2317096332    王五    24    126345.2317096333    王五    25    127345.2317096334    王五    26    128345.2317096335    王五    27    129345.2317096336    王五    28    130345.2317096336    王五    29    131345.2317096336    王五    30    132345.2317096336    王五    31    133345.2317096336    王五    32    134345.2317096336    王五    33    135345.2317096336    王五    34    136345.2317096336    王五    35    137345.2317096336    王五    36    138345.2317096336    王五    37    139345.2317096346    王五    38    140345.2317096347    王五    39    141345.2317096348    王五    40    142345.2317096349    王五    41    143345.2317096350    王五    42    144345.2317096351    王五    43    145345.2317096352    王五    44    146345.2317096353    王五    45    147345.2317096354    王五    46    148345.2317096354    王五    47    149345.2317096354    王五    48    150345.2317096354    王五    49    151345.2317096354    王五    50    152345.2317096354    王五    51    153345.2317096354    王五    52    154345.2317096354    王五    53    155345.2317096362    赵六    18    156345.2317096363    赵六    19    157345.2317096364    赵六    20    158345.2317096365    赵六    21    159345.2317096366    赵六    22    160345.2317096367    赵六    23    161345.2317096368    赵六    24    162345.2317096369    赵六    25    163345.2317096370    赵六    26    164345.2317096371    赵六    27    165345.2317096372    赵六    28    166345.2317096373    赵六    29    167345.2317096374    赵六    30    168345.2317096375    赵六    31    169345.2317096376    赵六    32    170345.2317096377    赵六    33    171345.2317096378    赵六    34    172345.2317096379    赵六    35    173345.2317096380    赵六    36    174345.2317096381    赵六    37    175345.2317096382    赵六    38    176345.2317096383    赵六    39    177345.2317096384    赵六    40    178345.2317096385    赵六    41    179345.2317096386    赵六    42    180345.2317096387    赵六    43    181345.2317096388    赵六    44    182345.2317096389    赵六    45    183345.2317096390    赵六    46    184345.2317096391    赵六    47    185345.2317096392    赵六    48    186345.2317096393    赵六    49    187345.2317096394    赵六    50    188345.2317096395    赵六    51    189345.2317096396    赵六    52    190345.2317096397    赵六    53    191345.2317096398    赵六    54    192345.2317096399    陈七    18    193345.2317096400    陈七    19    194345.2317096218    陈七    20    195345.2317096219    陈七    21    196345.2317096220    陈七    22    197345.2317096221    陈七    23    198345.2317096222    陈七    24    199345.2317096223    陈七    25    200345.2317096224    陈七    26    201345.2317096225    陈七    27    202345.2317096226    陈七    28    203345.2317096227    陈七    29    204345.2317096228    陈七    30    205345.2317096229    陈七    31    206345.2317096230    陈七    32    207345.2317096231    陈七    33    208345.2317096232    陈七    34    209345.2317096233    陈七    35    210345.2317096234    陈七    36    211345.2317096235    陈七    37    212345.2317096236    陈七    38    213345.2317096237    陈七    39    214345.2317096238    沈八    40    215345.2317096239    沈八    41    216345.2317096240    沈八    42    217345.2317096241    沈八    43    218345.2317096242    沈八    44    219345.2317096243    沈八    45    220345.2317096244    沈八    46    221345.2317096245    沈八    47    222345.2317096246    沈八    48    223345.2317096247    沈八    49    224345.2317096248    沈八    50    225345.2317096249    沈八    51    226345.2317096250    沈八    52    227345.2317096251    沈八    53    228345.2317096252    沈八    54    229345.2317096253    沈八    55    230345.2317096254    沈八    56    231345.2317096255    沈八    57    232345.2317096256    沈八    58    233345.2317096257    沈八    59    234345.2317096258    沈八    60    235345.2317096259    沈八    61    236345.2317096260    沈八    62    237345.2317096261    沈八    63    238345.2317096262    沈八    64    239345.2317096263    沈八    65    240345.2317096264    沈八    66    241345.2317096265    沈八    67    242345.2317096266    沈八    68    243345.2317096267    沈八    69    244345.2317096268    沈八    70    245345.2317096269    沈八    71    246345.2317096270    沈八    72    247345.2317096271    沈八    73    248345.2317096272    沈八    74    249345.2317096273    沈八    75    250345.2317096274    沈八    76    251345.2317096275    沈八    77    252345.2317096276    沈八    78    253345.2317096277    沈八    79    254345.2317096278    沈八    80    255345.2317096279    沈八    81    256345.2317096280    沈八    82    257345.2317096281    沈八    83    247345.2317096282    沈八    84    237345.2317096283    沈八    85    227345.2317096284    沈八    86    217345.2317096285    沈八    87    207345.2317096286    沈八    88    197345.2317096287    沈八    89    187345.2317096288    沈八    90    177345.2317096289    沈八    91    167345.2317096290    沈八    92    157345.2317096291    沈八    93    147345.2317096292    沈八    94    137345.2317096293    沈八    95    127345.2317096294    沈八    96    117345.2317096295    沈八    97    107345.2317096296    沈八    98    97345.2317096297    吴九    18    87345.2317096298    吴九    19    77345.2317096299    吴九    20    67345.2317096300    吴九    21    57345.2317096301    吴九    22    47345.2317096302    吴九    23    37345.2317096303    吴九    24    47345.2317096304    吴九    25    57345.2317096305    吴九    26    67345.2317096306    吴九    27    77345.2317096307    吴九    28    87345.2317096308    吴九    29    97345.2317096309    吴九    30    107345.2317096310    吴九    31    117345.2317096311    吴九    32    127345.2317096312    吴九    33    137345.2317096313    吴九    34    147345.2317096314    吴九    35    157345.2317096315    吴九    36    167345.2317096316    吴九    37    177345.2317096317    吴九    38    187345.2317096318    吴九    39    197345.2317096319    吴九    40    207345.2317096320    吴九    41    217345.2317096321    吴九    42    227345.2317096322    吴九    43    237345.2317096323    吴九    44    247345.2317096324    吴九    45    257345.2317096325    吴九    46    267345.2317096326    吴九    47    277345.2317096327    吴九    48    287345.2317096328    吴九    49    297345.2317096329    吴九    50    307345.2317096330    吴九    51    317345.2317096331    吴九    52    327345.2317096332    吴九    53    337345.2317096333    吴九    54    347345.2317096334    吴九    55    357345.2317096335    吴九    56    367345.2317096336    吴九    57    377345.2317096337    吴九    58    387345.2317096338    吴九    59    397345.2317096339    吴九    60    407345.2317096340    吴九    61    417345.2317096341    吴九    62    427345.2317096342    吴九    63    437345.2317096343    吴九    64    447345.2317096344    吴九    65    457345.2317096345    吴九    66    467345.2317096346    吴九    67    477345.2317096347    吴九    68    487345.2317096348    吴九    69    497345.2317096349    吴九    70    507345.2317096350    吴九    71    517345.2317096351    马十    18    527345.2317096352    马十    19    537345.2317096353    马十    20    547345.2317096354    马十    21    557345.23
View Code

 

转载于:https://www.cnblogs.com/zach0812/p/11565278.html

你可能感兴趣的文章
博客园文章编辑器【客户端应用程序】V2.0.0发布,命名为51cnblogs
查看>>
C# WPF获取任务栏时间区域的Rectangle
查看>>
DIV+CSS:如何编写代码才能更有效率
查看>>
利用Idea查看类的继承关系图
查看>>
跨进程访问共享内存的权限问题
查看>>
AD管理中心
查看>>
地图定位
查看>>
笑话收集
查看>>
c++相关网站
查看>>
java8-2 多态的概述
查看>>
有符号的整数翻转
查看>>
【转】js中cookie的使用详细分析
查看>>
linux shell学习笔记
查看>>
打印杨辉三角
查看>>
Linux入门配置之一
查看>>
素数筛选实现
查看>>
sass的使用
查看>>
第2章 感知器分类算法 2-1 分类算法的总体描述
查看>>
Reactjs+BootStrap开发自制编程语言Monkey的编译器:创建简易的页面IDE
查看>>
第九章 模板与群体数据 导学
查看>>