排序分组聚合 学习任务单 高中信息技术必修1.docx
-
资源ID:92452457
资源大小:465.52KB
全文页数:6页
- 资源格式: DOCX
下载积分:16金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
排序分组聚合 学习任务单 高中信息技术必修1.docx
DataFrame之排序、分组聚合 补充书本p124import pandas as pddf1=pd.read_excel('成绩.xlsx') #读取文件'成绩.xlsx' 1.排序方法:表名. sort_values('列名',axis=0,ascending=True,inplace=False)axis=0表示进行上下排序。axis默认值为0,可以省略ascending=True表示升序;ascending=False表示降序inplace=False 实际行的顺序没有改变1.表名.sort_values('列名',ascending=True) #按照列名进行升序排序 等价于df1.sort_values('列名')2.表名.sort_values('列名',ascending=False) #按照列名进行降序排序3.表名.sort_values('列名1','列名2',ascending=False) #先按照列名1进行降序排序,列名1相同按照列名2 进行降序排序 _ #按照'语文'成绩进行升序排序 _ #按照'语文'成绩进行升序排序_ #按照'语文'成绩进行降序排序_ #按照'数学'成绩进行降序排序_先按照班级进行升序排,班级相同按照数学进行升序排序。即按班级为主要关键字,数学为次要关键字进行升序排序2.分组聚合groupby2.1直接将列名作为索引import pandas as pddf2=pd.read_excel('成绩.xlsx') #读取'成绩.xlsx'存在df2#对班级分组并求平均,索引为班级g = _ 等价写法:g如左图2.as_index=False 不作为索引。索引即默认行号0 1 2 import pandas as pddf2=pd.read_excel('成绩.xlsx')#对班级分组并求平均,索引为0 1 2 3.g1=_g1如左图练习1:import pandas as pd读取"cs.xlsx" 内容df=_ #按照type进行分组并计算各type数量g1= _g2=_g1 g2练习2import pandas as pddf=pd.read_excel("cs.xlsx")g=_#按照type进行分组#计算各type平均值并保留两位小数datas=_ #对分组求平均值后的结果按照salary降序排序_cs.xlsx练习3,本质和练习2一样,只是练习2分开写了import pandas as pddf=pd.read_excel("cs.xlsx")#按照type进行分组并计算各type平均值并保留两位小数g=_#此时索引为_#对分组后的结果按照salary降序排序g1=_g(分组后):g1(排序后):在上面排序后的基础上建立图表import matplotlib.pyplot as plt #导入模块,起个小名“plt”import numpy as np #导入numpy模块plt.rcParams'font.sans-serif'='simHei' #解决中文乱码plt.rcParams'axes.unicode_minus'=False #解决中文乱码import pandas as pddf1=pd.read_excel('成绩.xlsx')g1 = df1.groupby('班级').mean().round(1) #此时:行索引为_x=g1.indexy=g1'语文'plt.bar(x,y,label='班级语文平均分')plt.legend()plt.show()import pandas as pddf1=pd.read_excel('成绩.xlsx')g2=df1.groupby('班级',as_index=False).mean().round(1) #此时行索引为_x=g2'班级'y=g2'语文' plt.bar(x,y,label='班级语文平均分')plt.legend()plt.title('平均分')plt.show()import pandas as pdimport matplotlib.pyplot as plt#下面pd. set_option()处理列数据无法对齐的情况pd.set_option('display.unicode.ambiguous_as_wide',True) pd.set_option('display.unicode.east_asian_width',True)plt.rcParams'font.sans-serif' = 'simhei' #图表显示中文字体df=_ #读取文件data.xlsx_ #修改第 1 行文件架的销售人员为“毕春#计算出每一笔业业务利润=数量*(销售单价-成本)df"利润"=_#按"商品名称"统计本月"销售数量","利润"的总和df1=_ #筛选出本月赚钱较多的前3种商品(利润最高的前3条,先排序再取前3行)print(_) #统计本月每一位销售人员的商品销售数量df2=_#筛选出本月销售数量>50 或销售数量<100 的销售人员print(_) x=_; y=df2"销售数量" #以垂直柱形图的形式统计显示所有销售员的业绩plt.figure(figsize=(8,4)plt.title("商场运营情况分析")plt.bar(x,y,label="销售人员业绩图",color="r")plt.legend( )plt.show() 6 / 6学科网(北京)股份有限公司