【作业提交】
将分类结果保存到文本文档进行提交,同时提交源代码。
*结果文件,要求每小题标注题号,两题之间要求空一行*
要求完成以下几个作业:
# 使用import关键字引入pandas库,为了简便使用缩写 “pd”来表示pandas库。
import pandas as pd
# 使用字典数据类型创建一个数据表,并用pandas库的DataFrame数据结构进行显示
data = {"姓名":["拿破仑","哥德巴赫","秦始皇","凯撒","耶稣"],
"国家":["地球联盟","黑暗祭祀","地球联盟","黑暗祭祀","地球联盟"],
"学号":["2019001","2019002","2019003","2019004","2019005"],
"语文":[33,28,32,30,99],
"数学":[98,97,94,92,100] ,
"英语":[33,28,32,30,97],
"科学":[98,97,94,92,98],
"历史":[94,57,96,98,91]
}
data_frame = pd.DataFrame(data)
display(data_frame)
(1) 获取国家不等于“地球联盟”的数据
# 使用 “不等于 !=” 操作符排除字段中包含特定值的数据
display(data_frame[data_frame.国家 != "地球联盟"])
(2) 获取学号等于2019003的数据
display(data_frame[data_frame.学号 == "2019003"])
(3)获取数学成绩大于95的同学的数据
display(data_frame[data_frame.数学 > 95])
(4) 获取历史成绩大于60,同时属于“黑暗祭祀”的同学的信息
display(data_frame[(data_frame.历史 > 60) & (data_frame.国家 == "黑暗祭祀")])
(data_frame.历史 > 60) & (data_frame.国家 == "黑暗祭祀")
自变量x的取值范围为:(-20, 20, 10)
对于取值范围有两种理解:
# 通过inline指令,实现在Jupyter中的实时绘图功能
%matplotlib inline
# 1. 引入库
# 使用import关键字引入matplotlib库,为了简便使用缩写 “plt”来表示matplotlib库。
import matplotlib.pyplot as plt
import numpy as np
# 2. 指定坐标轴(x,y值)
# 使用linspace()函数生成一个-20到20,元素个数为10的等差数列。
# 令数列中的值为 x, 并根据表达式计算对应的 y值。
x = np.linspace(-20, 20, 10)
y = 2*x**2 - 3*x**4 + 6*x - 3
# 3. 把x,y的关系画到坐标轴上 plot(横坐标,纵坐标,标记,颜色。。。。)
#使用plot()函数绘制出曲线图
plt.plot(x, y, marker = "o")
plt.show()
直方图应包含6个序列,每个序列3种类型的特征,取值如下:
x_data = ('China', 'America', 'Japan', 'Germany', 'France', 'Italy')
y1_data = (120, 325, 310, 235, 227, 256)
y2_data = (225, 312, 314, 221, 253, 341)
y3_data = (232, 332, 222, 241, 190, 299)
# 通过inline指令,实现在Jupyter中的实时绘图功能
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
plt.figure(1)
x_index = np.arange(6) #柱的索引
x_data = ('China', 'America', 'Japan', 'Germany', 'France', 'Italy')
y1_data = (120, 325, 310, 235, 227, 256)
y2_data = (225, 312, 314, 221, 253, 341)
y3_data = (232, 332, 222, 241, 190, 299)
bar_width = 0.2 #定义一个数字代表每个独立柱的宽度
# 使用 bar()函数定义柱状图的各个参数,依次包括:左偏移、高度、柱宽、透明度、颜色、图例
# 关于左偏移,不用关心每根柱的中心不中心,因为只要把刻度线设置在柱的中间就可以了
rects1 = plt.bar(x_index, y1_data, width=bar_width,alpha=0.4, color='b',label='legend1')
rects2 = plt.bar(x_index + bar_width, y2_data, width=bar_width,alpha=0.5,color='r',label='legend2')
rects3 = plt.bar(x_index + bar_width + bar_width, y3_data, width=bar_width,alpha=0.5,color='c',label='legend3')
# 使用 xticks() 函数设置x轴的刻度线
plt.xticks(x_index + bar_width/2, x_data)
plt.legend() #显示图例
plt.show()