内容正文:
pandas处理数据
1.下列有关pandas-Series的说法错误的是( )
A.包含一个数组的数据和一个与数据关联的索引,是二维数据结构
B.其索引值默认是从0起递增的整数
C.可用列表、字典等创建Series数据结构
D.其索引可以指定,类型可以为字符串型
2.下列有关pandas-DataFrame的说法错误的是( )
A.是一种二维数据结构
B.由1个索引列和若干个数据列组成
C.同一个DataFrame对象的数据列类型必须相同
D.可看作共享同1个index的Series集合
3.不能实现选取df对象前5行数据记录的语句是( )
A.df.head() B.df.head(5)
C.df[0:5] D.df[5]
回答下列第4~6题。
4.某DataFrame对象df中包含“准考证号”“班级”“姓名”“文”“数学”…“总分”等10个数据列、多个数据行,能获取对象df第3个数据的“姓名”内容的语句有( )
①df[2,'姓名'] ②df.at[2,'姓名'] ③df[2]['姓名'] ④df['姓名'][2] ⑤df.姓名[2]
A.①②③ B.①②④
C.②④ D.②④⑤
5.如第4题对象df,能够降序排列输出总分大于等于600分的学生数据的代码组合是( )
①df=df.sort_values(″总分″,ascending=True)
②df=df.sort_values(″总分″,ascending=False)
③df=df[″总分″,>=600]
④df=df[df[″总分″]>=600]
⑤print(df)
A.①③⑤ B.①④⑤
C.②③⑤ D.②④⑤
6.如第4题对象df1,下列语句中,可以以班级为单位,统计出各班级“总分”的平均值的有( )
①df.groupby('班级').mean()
②df.groupby('总分').mean()
③df.groupby('班级')['总分'].mean()
④df.groupby('班级').总分.mean()
⑤df.groupby('班级').describe()
A.①②③④⑤
B.①②③⑤
C.①③④⑤
D.①②③
7.有如下Python程序段。
import pandas as pd
list=[['周欣怡','湖州',15,646],['王培新','杭州',16,598],['张佳明','杭州',16,609],['林逢春','嘉兴',15,547],['朱梁栋','湖州',16,588],['陈清瑞','嘉兴',15,571]]
inf=pd.DataFrame(list,columns=['姓名','地区','年龄','总分'])
print(inf)
print('_' 20)
print(inf.groupby('地区',as_index=True).mean())
执行该程序段后,输出的结果是 (单选,填字母)。
8. 模块用于科学计算(随机数、数组运算等); 模块基于numpy实现,主要用于数据的处理和分析; 用于绘图库。
9.小明从某网站上收集了2022年4月部分生产资料市场价格变动情况数据,数据集保存在“shuju.xlsx”中,格式如图a所示。
图a
为分析相关类别生产资料的涨跌幅情况,小明编写了以下Python程序。
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #正常显示中文字体
df=pd.read_excel(″shuju.xlsx″)
df[″涨跌幅″]=
(1)通过数据计算添加涨跌幅列,请在划线处填写实现的方式。
计算公式为:涨跌幅=(本期价格-上期价格)/本期价格 100。
(2)若要对表格中的数据进行分类统计,并求其平均涨跌幅。请完善以下代码:
g=df.groupby(″类别″,as_index=False)
df1=
df1=df1.sort_values(″涨跌幅″,ascending=False)
(3)根据上述操作结果,制作一份显示类别涨跌幅平均值的图表,其格式如图b所示。
各种类别对比分析图
图b
请完善以下代码。
plt.figure(figsize=(8,4))
plt.title(″各种类别对比分析图″)
plt.bar(① ,df1[″涨跌幅″],label='涨跌幅')
plt.xlabel(″类别″)
plt.ylabel(② )
plt.legend()
plt.show()
10.某市普通高中选课数据如下图所示,学生