资源简介 姓名 班级 总分 班级排名 年级排名 语文 数学 英语 物理 化学 技术张明远 G302 677 1 1 121 132 128 98 100 -李雨桐 G302 676 2 2 106 143 133 96 99 -王思睿 G302 671 3 3 108 136 133 95 100 -刘星辰 G302 670 4 4 116 135 131 97 98 -陈若曦 G301 668.5 1 5 116.5 121 135 99 98 -杨天宇 G301 668 2 6 117 116 139 99 98 -赵雅琳 G303 663 1 7 110 125 137 97 98 -黄俊杰 G302 662.5 5 8 113.5 141 121 95 98 -周晓涵 G302 662 6 9 112.5 126 132.5 95 98 98吴浩轩 G301 661.5 3 10 116.5 115 137 98 97 98徐安然 G301 659.5 4 11 107.5 127 132 98 97 98孙悦然 G302 659 7 12 118.5 114 133.5 98 97 98朱文昊 G307 655.5 1 13 110.5 119 133 98 97 -胡佳怡 G301 652.5 5 14 117 114 131.5 97 95 -林嘉树 G302 652 8 15 114 110 136 96 97 -郑心怡 G307 650.5 2 16 107.5 113 136 98 98 -谢宇航 G309 649 1 17 116.5 116 122.5 96 98 -唐语嫣 G301 648 6 18 115 109 130 98 98 98韩修杰 G308 645 1 19 115 113 131 97 98 -董欣妍 G301 644.5 7 20 102.5 108 140 97 98 99曹逸辰 G302 643.5 9 21 107.5 124 125 94 97 -许清婉 G309 643.5 2 21 107.5 117 132 96 93 98邓子墨 G301 642 8 23 110 107 139 98 90 98萧云峰 G311 642 1 23 115 99 137 98 96 -冯诗晴 G306 639 1 25 109 104 133 97 97 99曾一鸣 G304 637.5 1 26 111.5 111 125 96 96 -彭梓萱 G301 636.5 9 27 103.5 122 118 98 97 98潘睿哲 G302 636.5 10 27 110.5 113 124 97 96 -袁静怡 G308 636 2 29 105 113 123 98 98 99于皓然 G302 635 11 30 118 100 136 87 96 -蒋梦琪 G303 635 2 30 115.5 128 105.5 95 97 -蔡昊阳 G301 634.5 10 32 102.5 124 118 97 95 98余书瑶 G302 634.5 12 32 108.5 109 132 95 97 -杜泽楷 G303 633.5 3 34 113.5 105 128 94 97 -叶晨曦 G310 633 1 35 119 99 128 - - -程雪柔 G303 632.5 4 36 111.5 107 129 92 96 -苏逸飞 G303 632.5 4 36 113.5 112 123 97 96 -魏瑾萱 G308 632.5 3 36 109.5 126 116 95 90 -吕明哲 G301 632 11 39 102 111 128 98 94 -丁乐怡 G301 632 11 39 108 117 116 99 96 -任俊豪 G301 632 11 39 113 104 136 96 89 -卢婉清 G301 631.5 14 42 110.5 109 127 92 97 -钟志远 G303 631.5 6 42 111.5 96 133 97 98 -汪雨菲 G303 631.5 6 42 115.5 111 117 95 96 -田瑞霖 G301 631 15 45 99.5 114 128.5 95 98 -姜悦宁 G301 629.5 16 46 110.5 102 131 97 91 98崔浩宇 G303 628.5 8 47 115.5 118 111 98 98 -康雅雯 G307 628 3 48 107 99 131 98 96 -白昊然 G303 627.5 9 49 112.5 112 116 96 95 -江念真 G302 627 13 50 109 111 127 93 93 -孟翔宇 G310 627 2 50 110.5 107 125.5 - - -方诗涵 G301 626.5 17 52 106 108 127.5 98 94 -石峻熙 G308 626.5 4 52 102.5 114 123 97 97 -廖思颖 G309 626.5 3 52 115.5 105 128 87 93 -赖天佑 G302 625.5 14 55 116.5 97 125 92 98 -武佳琪 G307 625.5 4 55 103.5 99 129 98 98 98戴文博 G302 624.5 15 57 110.5 108 134 86 88 98夏若晴 G303 624.5 10 57 117 105 128.5 92 86 -傅凌峰 G303 624.5 10 57 116.5 111 110 98 97 92范悦欣 G306 624.5 2 57 109.5 107 124 91 96 97乔一凡 G304 623 2 61 104 113 123 92 94 97谭心玥 G310 622.5 3 62 100.5 106 128 - - -洪子骞 G301 622 18 63 119 105 121 89 90 -龚美琳 G301 621.5 19 64 116.5 100 128 88 90 -文彦哲 G310 621.5 4 64 115.5 104 127 89 94 -辛雨晨 G301 620.5 20 66 114.5 83 132 95 98 -严瑾瑜 G303 620.5 12 66 110.5 106 126 87 97 -秦昊阳 G303 620.5 12 66 99.5 113 116 98 96 98尤静雅 G304 620.5 3 66 102.5 118 122 89 95 -薛承安 G305 620.5 1 66 108 96 129.5 - - -贺思涵 G307 620 5 71 112 98 120 97 96 -倪俊杰 G301 619.5 21 72 99.5 102 129 95 98 -罗雯婷 G303 618.5 14 73 110.5 98 135 94 94 -郝明辉 G306 618.5 3 73 100.5 108 125 95 92 -易婉清 G302 618 16 75 109 99 132 88 99 -常乐成 G303 618 15 75 115 96 123 - 95 -利用Pandas模块处理数据基础概念·总括1. Pandas 提供了 Series 和 DataFrame 两种数据结构。2. 引入 Pandas 模块的语句:import pandas as pdpd是用户为导入模块取的别名。基础概念·Series1. Series 是一种一维的数据结构,包含一个数组的数据 (values) 和一个与数据关联的索引 (index) ,索引值默认是从 0 起递增的整数。2. Series 对象与列表的不同之处:列表只能默认索引从 0 开始,而 Series 可以指定索引,索引类型可以是字符串型。索引值不能重复,具有唯一性。基础概念·Series 对象属性属性 说明Series 的下标索引,其值默认是从0起递index增的整数,也可以指定为字符串型values 存放 Series 值的一个数组基础概念·Series相关操作 运行结果:1. 创建 Series 对象(默认索引)import pandas as pds1=pd.Series([45,30,35,28])print(s1)2. 创建 Series 对象(指定索引)import pandas as pds2=pd.Series([8,12,18,20],index=["a","b","c","d"])print(s2)基础概念·Series相关操作 运行结果:3. Series 对象的检索与修改输出索引值为 0 的值: print(s1[0]) 45输出索引值为"b"的值: print(s2["b"]) 12输出values小于33的值:print(s1[s1<33]) 1 30修改索引值为 1 的值为 10 : s1[1]=10 3 28print(s1[1]) dtype: int64注意 s1 和 s2 索引的区别!!! 10基础概念·Series相关操作 运行结果:4. Series 对象的遍历 a遍历 Series 对象的索引 bcfor i in s2.index: dprint(i)遍历 Series 对象的值 812for i in s2.values: 18print(i) 20基础概念·Series相关操作4. 类比于列表 Series 对象的遍历【注意】 遍历 Series 对象的值时 ,s2.values 可以省略成 s2 ,因为 运行结果:Series 对象默认属性就是 values102030基础概念·DataFrameDataFrame 是一种二维的数据结构,由1个索引列 (index) 和若干个数据列组成,每个数据列可以是不同的类型。DataFrame 可以看作是共享同一个 index 的Series 的集合。基础概念·DataFrame基础概念·DataFrame 对象属性属性 说明index DataFrame 的行索引columns 存放各列的标题values 存放二维数据的值T 行列转置基础概念·DataFrame 相关操作1. 创建 DataFrame 对象(利用字典)运行结果: 注意:代码中 index=[0,1,2],columns=["学号","性别","年龄"]可以省略,因为默认索引就是[0,1,2],列标题columns默认就是字典的键。基础概念·DataFrame 相关操作 运行结果:4. DataFrame 对象的遍历及转置0for i in df.index: 1索引 print(i) 2for i in df.columns: 学号列标题 print(i) 性别#df.columns可写成df 年龄基础概念·DataFrame 相关操作 运行结果:4. DataFrame 对象的遍历及转置['s001' '男' 16]for i in df.values: ['s002' '女' 17]值 print(i) ['s003' '男' 18]行列转置df.values 本质上是二维列表,即 df.values=[['s001','男','16'],['s002','女','17'],['s003','男','18']],其中 df.values[0]值为['s001','男','16'].基础概念·DataFrame 相关操作5. 其他创建 DataFrame 对象方式由二维列表创建由 Excel / Csv 表格创建基础概念·DataFrame 常见函数函数 说明count( ) 返回非空(NaN)数据项的数量sum( )、mean( ) 求和、求平均值,通过axis=0/1确定行列max( )、min( ) 返回最大、最小值返回各列的基本描述统计值,包含计数、平均describe( )数、标准差、最大值、最小值及4分位差head( )、tail( ) 返回DataFrame的前n个、后n个数据记录基础概念·DataFrame 常见函数函数 说明对各列或各行中的数据进行分组,然后可对其groupby( )中每一组数据进行不同的操作sort_values( ) 排序,通过axis=0/l确定行列drop( ) 删除数据,通过axis=0/1确定行列append( ) 在指定元素的结尾插入内容insert( ) 在指定位置插入列基础概念·DataFrame 常见函数函数 说明rename( ) 修改列名或者索引concat( ) 合并DataFrame对象set_value( ) 根据行标签和列标签设置单个值plot( ) 绘图基础概念·DataFrame 相关操作演示1. axis=0/1 的使用情况(默认 axis=0)2. 获取数据方式3. 筛选(略:多条件筛选)4. 数据统计(略:多列求和)5. 删除 drop( )6. 添加行/列 append( )7. 数据排序8. 数据分组9. 绘图基础概念·DataFrame 相关操作演示1. axis=0/1 的使用情况(默认 axis=0)axis=0:数据在纵向发生变化,沿着每一列向下执行axis=1:数据在横向发生变化,沿着每一行横向执行具体应用:sum( ) , mean( ) , count( ) , drop( )基础概念·DataFrame 相关操作演示2. 获取数据方式(1) 获取某列数据(以获取语文列为例)属性记法:df.语文 字典记法:df["语文"]注:列名是数字开头,只能用字典记法,即 df[1](2) 获取行数据获取第 1 行:df[0:1] (切片)获取第 n 行:df[n-1:n]获取前/后 n 行:df.head(n) / df.tail(n)注:head( ) / tail( ) 默认前/后5行基础概念·DataFrame 相关操作演示2. 获取数据方式(3) 获取单个值以索引获取: df.at[6,"总分"]df.总分[6]df["总分"][6]以行数获取: df.values[6,2]df.values[6][2]注:除 values[ ] 外,其余均可用来修改值基础概念·DataFrame 相关操作演示3. 筛选(略:多条件筛选)e.g. 筛选总分大于 650 的数据行df[df.总分>650]df[df["总分"]>650]注:双层结构嵌套!!!多条件筛选(单个条件用()括起来)与:条件之间用&相连或:条件之间用 | 相连e.g. df[(df.语文>110)&(df.数学>110)]基础概念·DataFrame 相关操作4. 数据统计(略:多列求和)(以数学列为例)计算数据个数:df.数学.count(axis= )计算平均值: df.数学.mean()计算数据之和:df.数学.sum()注:当然也可以用字典记法!补充:① 字符类型可求和(字符串相连)、计数;不可求平均(会报错)但不同类型的数据(如字符和数字)不能直接一起求和② 一般不对行进行统计(数据类型杂乱)③ 行上某几列求平均 (了解)(增加列的方法)df["平均分"]=df[["语文","数学","英语"]].mean(axis=1)基础概念·DataFrame 相关操作演示5. 删除 drop( )删除列:df.drop("化学",axis=1)删除行:df.drop(0)6. 添加行/列 _append( )添加行:df2=df._append({"姓名":"张三","班级":"G301","总分":670,"班级排名":3,"年级排名":50,"语文":130,"数学":134,"英语":120,"物理":90,"化学":88,"技术":100},ignore_index=True)注:利用字典方式添加!基础概念·DataFrame 相关操作演示6. 添加行/列 _append( )添加列:目前一般只能用“行上某几列求和”的方式补充:①关于数据统计:在3.8及其以前的python中,遇到无法求平均的字符类型,会自动隐藏。故可以直接写df.mean()对每一列数据求平均,也可以通过df.总分=df.sum(axis=1)来增加总分列。但在3.11版本后的python中,则会报错。故只能通过df.语文.mean()来对语文列求平均。不过目前命题者并不会在这个方向来考察。②关于变量赋值的操作如果是对表格内容进行操作(增删改),则需给它一个变量赋值。如df=;df2=;如果是获得表格的内容,则可以直接print。基础概念·DataFrame 相关操作演示7. 数据排序dft=df.sort_values("语文") #按语文成绩排序,默认升序dfs=df.sort_values("数学",ascending=False)注:① ascending=True 升序 ;False 降序(默认True)② ignore_index=True 忽略原索引(默认False)基础概念·DataFrame 相关操作演示8. 数据分组(按班级分组求平均)g=df.groupby("班级",as_index=False)g=g.mean()h=df.groupby("班级").mean()注:① 分组后必须跟上数据统计的操作(求和、平均、计数)。否则无法输出(因为此时df对象处于待整理状态)② as_index 是否将分组依据作为新索引(默认True)若为True,则再访问班级列不能写h.班级;必须写h.index(班级列已经作为索引,所以不存在了)基础概念·DataFrame 相关操作演示8. 数据分组(按班级分组求平均)特别提醒:如果分组后对某一列操作且将分组依据作为新索引,则新的df对象自动变为Series对象。h=df.groupby("班级").英语.mean() #①此时不再有班级和英语列。须用h.index h.values来获得两列数据。或者在①句后添加语句②h=pd.DataFrame(h) #②将对象转换为DataFrame格式基础概念·例题基础概念·例题基础概念·例题基础概念·例题基础概念·例题基础概念·例题(共36张PPT)利用Pandas模块处理数据1. Pandas 提供了 Series 和 DataFrame 两种数据结构。2. 引入 Pandas 模块的语句:import pandas as pd基础概念pd是用户为导入模块取的别名。·总括基础概念·Series1. Series 是一种一维的数据结构,包含一个数组的数据 (values) 和一个与数据关联的索引 (index) ,索引值默认是从 0 起递增的整数。2. Series 对象与列表的不同之处:列表只能默认索引从 0 开始,而 Series 可以指定索引,索引类型可以是字符串型。索引值不能重复,具有唯一性。基础概念·Series 对象属性属性 说明index Series 的下标索引,其值默认是从0起递增的整数,也可以指定为字符串型values 存放 Series 值的一个数组基础概念·Series相关操作1. 创建 Series 对象(默认索引)import pandas as pds1=pd.Series([45,30,35,28])print(s1)运行结果:2. 创建 Series 对象(指定索引)import pandas as pds2=pd.Series([8,12,18,20],index= ["a","b","c","d"])print(s2)基础概念·Series相关操作3. Series 对象的检索与修改运行结果:输出索引值为 0 的值: print(s1[0])输出索引值为"b"的值: print(s2["b"])输出values小于33的值:print(s1[s1<33])修改索引值为 1 的值为 10 : s1[1]=10print(s1[1])注意 s1 和 s2 索引的区别!!!45121 303 28dtype: int6410基础概念·Series相关操作4. Series 对象的遍历运行结果:遍历 Series 对象的索引for i in s2.index:print(i)遍历 Series 对象的值for i in s2.values:print(i)abcd8121820基础概念·Series相关操作4. Series 对象的遍历运行结果:【注意】 遍历 Series 对象的值时 , s2.values 可以省略成 s2 ,因为Series 对象默认属性就是 values102030类比于列表基础概念·DataFrameDataFrame 是一种二维的数据结构,由1个索引列 (index) 和若干个数据列组成,每个数据列可以是不同的类型。DataFrame 可以看作是共享同一个 index 的 Series 的集合。基础概念·DataFrame基础概念·DataFrame 对象属性属性 说明index DataFrame 的行索引columns 存放各列的标题values 存放二维数据的值T 行列转置基础概念·DataFrame 相关操作1. 创建 DataFrame 对象(利用字典)运行结果:注意:代码中 index=[0,1,2],columns=["学号","性别","年龄"]可以省略,因为默认索引就是[0,1,2],列标题columns默认就是字典的键。·DataFrame 相关操作基础概念4. DataFrame 对象的遍历及转置运行结果:for i in df.index:print(i)for i in df.columns:print(i)#df.columns可写成df012学号性别年龄索引列标题·DataFrame 相关操作基础概念4. DataFrame 对象的遍历及转置运行结果:值for i in df.values:print(i)['s001' '男' 16]['s002' '女' 17]['s003' '男' 18]行列转置df.values 本质上是二维列表,即 df.values=[['s001','男','16'], ['s002','女','17'],['s003','男','18']],其中 df.values[0]值为['s001','男','16'].基础概念·DataFrame 相关操作5. 其他创建 DataFrame 对象方式由二维列表创建由 Excel / Csv 表格创建基础概念·DataFrame 常见函数函数 说明count( ) 返回非空(NaN)数据项的数量sum( )、mean( ) 求和、求平均值,通过axis=0/1确定行列max( )、min( ) 返回最大、最小值describe( ) 返回各列的基本描述统计值,包含计数、平均数、标准差、最大值、最小值及4分位差head( )、tail( ) 返回DataFrame的前n个、后n个数据记录基础概念·DataFrame 常见函数函数 说明groupby( ) 对各列或各行中的数据进行分组,然后可对其中每一组数据进行不同的操作sort_values( ) 排序,通过axis=0/l确定行列drop( ) 删除数据,通过axis=0/1确定行列append( ) 在指定元素的结尾插入内容insert( ) 在指定位置插入列基础概念·DataFrame 常见函数函数 说明rename( ) 修改列名或者索引concat( ) 合并DataFrame对象set_value( ) 根据行标签和列标签设置单个值plot( ) 绘图·DataFrame 相关操作基础概念演示1. axis=0/1 的使用情况(默认 axis=0)2. 获取数据方式3. 筛选(略:多条件筛选)4. 数据统计(略:多列求和)5. 删除 drop( )6. 添加行/列 append( )7. 数据排序8. 数据分组9. 绘图·DataFrame 相关操作基础概念演示1. axis=0/1 的使用情况(默认 axis=0)axis=0:数据在纵向发生变化,沿着每一列向下执行axis=1:数据在横向发生变化,沿着每一行横向执行具体应用:sum( ) , mean( ) , count( ) , drop( )·DataFrame 相关操作基础概念演示2. 获取数据方式(1) 获取某列数据(以获取语文列为例)属性记法:df.语文 字典记法:df["语文"]注:列名是数字开头,只能用字典记法,即 df[1](2) 获取行数据获取第 1 行:df[0:1] (切片)获取第 n 行:df[n-1:n]获取前/后 n 行:df.head(n) / df.tail(n)注:head( ) / tail( ) 默认前/后5行·DataFrame 相关操作基础概念演示2. 获取数据方式(3) 获取单个值以索引获取: df.at[6,"总分"]df.总分[6]df["总分"][6]以行数获取: df.values[6,2]df.values[6][2]注:除 values[ ] 外,其余均可用来修改值·DataFrame 相关操作基础概念演示3. 筛选(略:多条件筛选)e.g. 筛选总分大于 650 的数据行df[df.总分>650]df[df["总分"]>650]注:双层结构嵌套!!!多条件筛选(单个条件用()括起来)与:条件之间用&相连或:条件之间用 | 相连e.g. df[(df.语文>110)&(df.数学>110)]·DataFrame 相关操作基础概念4. 数据统计(略:多列求和)(以数学列为例)计算数据个数:df.数学.count(axis= )计算平均值: df.数学.mean()计算数据之和:df.数学.sum()注:当然也可以用字典记法!补充:① 字符类型可求和(字符串相连)、计数;不可求平均(会报错)但不同类型的数据(如字符和数字)不能直接一起求和② 一般不对行进行统计(数据类型杂乱)③ 行上某几列求平均 (了解)(增加列的方法)df["平均分"]=df[["语文","数学","英语"]].mean(axis=1)·DataFrame 相关操作基础概念演示5. 删除 drop( )删除列:df.drop("化学",axis=1)删除行:df.drop(0)6. 添加行/列 _append( )添加行:df2=df._append({"姓名":"张三","班级":"G301","总分":670,"班级排名":3,"年级排名":50,"语文":130,"数学":134,"英语":120,"物理":90,"化学":88,"技术":100},ignore_index=True)注:利用字典方式添加!·DataFrame 相关操作基础概念演示6. 添加行/列 _append( )添加列:目前一般只能用“行上某几列求和”的方式补充:①关于数据统计:在3.8及其以前的python中,遇到无法求平均的字符类型,会自动隐藏。故可以直接写df.mean()对每一列数据求平均,也可以通过df.总分=df.sum(axis=1)来增加总分列。但在3.11版本后的python中,则会报错。故只能通过df.语文.mean()来对语文列求平均。不过目前命题者并不会在这个方向来考察。②关于变量赋值的操作如果是对表格内容进行操作(增删改),则需给它一个变量赋值。如df=;df2=;如果是获得表格的内容,则可以直接print。·DataFrame 相关操作基础概念演示7. 数据排序dft=df.sort_values("语文") #按语文成绩排序,默认升序dfs=df.sort_values("数学",ascending=False)注:① ascending=True 升序 ;False 降序(默认True)② ignore_index=True 忽略原索引(默认False)·DataFrame 相关操作基础概念演示8. 数据分组(按班级分组求平均)g=df.groupby("班级",as_index=False)g=g.mean()h=df.groupby("班级").mean()注:① 分组后必须跟上数据统计的操作(求和、平均、计数)。否则无法输出(因为此时df对象处于待整理状态)② as_index 是否将分组依据作为新索引(默认True)若为True,则再访问班级列不能写h.班级;必须写h.index(班级列已经作为索引,所以不存在了)·DataFrame 相关操作基础概念演示8. 数据分组(按班级分组求平均)特别提醒:如果分组后对某一列操作且将分组依据作为新索引,则新的df对象自动变为Series对象。h=df.groupby("班级").英语.mean() #①此时不再有班级和英语列。须用h.index h.values来获得两列数据。或者在①句后添加语句②h=pd.DataFrame(h) #②将对象转换为DataFrame格式·例题基础概念·例题基础概念·例题基础概念·例题基础概念·例题基础概念·例题基础概念基础概念1234567890you已知已知已知已知print·总括 展开更多...... 收起↑ 资源列表 利用Pandas模块处理数据.pdf 利用Pandas模块处理数据.pptx 成绩.xlsx