资源简介 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 pd df2=pd.read_excel('成绩.xlsx') #读取'成绩.xlsx'存在df2 #对班级分组并求平均,索引为班级 g = ________________________________________________ 等价写法:2.as_index=False 不作为索引。索引即默认行号0 1 2…import pandas as pd df2=pd.read_excel('成绩.xlsx') #对班级分组并求平均,索引为0 1 2 3.. g1=________________________________________________[练习1:]import pandas as pd读取"cs.xlsx" 内容df=_______________________________________#按照type进行分组并计算各type数量g1= _______________________________________g2=________________________________________g1 g2[练习2]import pandas as pddf=pd.read_excel("cs.xlsx")g=____________________#按照type进行分组#计算各type平均值并保留两位小数datas=________________________________#对分组求平均值后的结果按照salary降序排序___________________________________________[练习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() 展开更多...... 收起↑ 资源预览