内容正文:
DataFrame之排序、分组聚合 补充书本p124
import pandas as pd
df1=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.分组聚合groupby
2.1直接将列名作为索引
import pandas as pd
df2=pd.read_excel('成绩.xlsx') #读取'成绩.xlsx'存在df2
#对班级分组并求平均,索引为班级
g = ________________________________________________
等价写法:
g如左图
2.as_index=False 不作为索引。索引即默认行号0 1 2…
import pandas as pd
df2=pd.read_excel('成绩.xlsx')
#对班级分组并求平均,索引为0 1 2 3..
g1=________________________________________________
g1如左图
[练习1:]
import pandas as pd
读取"cs.xlsx" 内容
df=_______________________________________
#按照type进行分组并计算各type数量
g1= _______________________________________
g2=________________________________________
g1
g2
[练习2]
import pandas as pd
df=pd.read_excel("cs.xlsx")
g=____________________#按照type进行分组
#计算各type平均值并保留两位小数
datas=________________________________
#对分组求平均值后的结果按照salary降序排序
___________________________________________
[练习3,本质和练习2一样,只是练习2分开写了]cs.xlsx
import pandas as pd
df=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['