2020年上海市高等学校信息技术水平考试试卷_三级_数据科学技术及应用_模拟卷_四、操作题_答案

2020年上海市高等学校信息技术水平考试试卷_三级_数据科学技术及应用_模拟卷_四、操作题_答案

(本试卷考试时间 150 分钟)

答案是自己做的,经验证,可成功运行。
内容仅供学习交流,不可转载。

点击下载源程序

四、操作题

(一)、简答题(共2题,每题5分,共10分)

提示:打开C:\KS\Answer.doc文件,将简答题答案写在该文件的相应题目下并保存。

1.请描述所学专业或日常生活中某个具体场景所涉及的数据,给出各项数据名称,说明以及数据的类型(连续数值/可选项/文本/图像/视频/声音/时序)等。

2.试简述分类方法和聚类方法的区别,请根据实际案例所涉及的数据以及分析目标进行说明。

答案:

(二)、综合应用题(共1题,34分)

提示:打开"C:\KS"文件下的程序文件"prog.py",按照程序注释说明,编写代码实现功能要求。

台风记录数据集(winds.csv)记录了2014年某区域发生的台风信息,包括台风名、台风等级、气压(百帕)、移动速度(公里/时)、纬度、经度、记录数、顺序、风速(米/秒)等9个属性(具体说明见“数据集说明”文件)。试分析与台风等级相关的特征,并建立等级判别模型。

具体要求如下:
1)从文件中读出台风数据(3分);
2)数据集中表示台风等级level有六个等级为:热带低压、热带风暴、强热带风暴、台风、强台风、超强台风。将台风等级字符串依次替换为数字1-6(4分);
3)计算台风的各个特征与台风等级的相关性,筛选出相关性较高(相关系数>0.6)的特征建立数据集(5分);
4)绘制图形展示筛选出的特征与台风等级的相关性(4分);
5)按照合适比例将分析数据分为训练集和测试集(3分);
6)在训练集上建立分类模型,至少选用两种分类算法建立模型(7分);
7)在测试集上测试分类模型的性能(3分);
8)根据第7)步的运行结果,说明分类模型在台风等级判别上的性能,请描述在程序文件给出的注释行中(5分)。

答案:


#请在注释后填写相应代码,注释勿删除

#1)从文件中读出台风数据(3分);
import pandas,numpy
from pandas import DataFrame
from matplotlib import pyplot as plt
from sklearn import model_selection,tree,metrics,svm

filename='winds.csv'
df=pandas.read_csv(filename,index_col=7,header=0,encoding='gbk')

#2)数据集中表示台风等级level有六个等级为:热带低压、热带风暴、强热带风暴、台风、强台风、超强台风。将台风等级字符串依次替换为数字1-6(4分);
level_list=['热带低压','热带风暴','强热带风暴','台风','强台风','超强台风']

level_num=1

for i in level_list:
    df.loc[df['level']==i,'level']=level_num
    level_num+=1

df['level']=df['level'].astype(int)

#3)计算台风的各个特征与台风等级的相关性,筛选出相关性较高(相关系数>0.6)的特征建立数据集(5分);
headers=df.columns.tolist()

corr=df.corr()

corr=corr[corr>0.6]
corr=corr[corr!=1.0]

corr=corr[corr.isnull().all()==False].copy()

index_3=corr.index.tolist()

df_3=df[index_3]

#4)绘制图形展示筛选出的特征与台风等级的相关性(4分);
pandas.plotting.scatter_matrix(df_3,diagonal='kde')

plt.show()

#5)按照合适比例将分析数据分为训练集和测试集(3分);
df_3.dropna(inplace = True)
x=df_3[index_3[0]].values.astype(float).reshape(-1, 1)
y=df_3[index_3[1]].values.astype(int)
x_train, x_test, y_train, y_test = model_selection.train_test_split(x,y,test_size=0.3,random_state=1)

#6)在训练集上建立分类模型,至少选用两种分类算法建立模型(7分); 
clf_train = tree.DecisionTreeClassifier()
clf_train.fit(x_train,y_train)
svc = svm.SVC(kernel='rbf', gamma=0.6, C = 1.0)
svc.fit(x_train,y_train)

#7)在测试集上测试分类模型的性能(3分);
print(clf_train.score(x_test,y_test))
print(svc.score(x_test,y_test))

#8)根据第7)步的运行结果,说明分类模型在台风等级判别上的性能,请描述在程序文件给出的注释行中(5分)。
#决策树模型和向量机模型的准确率均为0.47368421052631576,效果较差。

答题过程中可能存在的问题:

1.第一题中,由于文件编码的问题,如果不添加ecoding='gbk’会报错,但是该段代码在"Python科学计算库函数快速索引表.xlsx"中没有,需要自己注意并解决。
2.第二题中,替换后需要.astype(int),不然不会参与后续计算。
3.第三题中,“相关性较高(相关系数>0.6)”题设不明确,需要确定是否为正/负相关性较高,即是否需要计算绝对值。若仅计算正相关,则计算结果为:‘windspeed’(本答案采用该做法)。
4.第四题及后续答题中,'windspeed’列数据有缺失。通过“三、程序填空题”的第四题可以看出,前期的数据处理在此处没有重复出现,因此需要添加一个删除存在缺失项的行的语句。
5.第五题中,由于x只有一列,因此需要在最后添加reshape(-1, 1)方法。
6.第八题,测试性能不佳。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
2020上海市高等学校信息技术水平考试试卷三级信息系统与数据库技术A场主要考查学生在信息系统与数据库技术方面的基础知识和应用能力。此次考试难度适中,试卷结构合理,题型多样。 试卷由选择题、填空题和应用题三部分组成。选择题主要考查学生对基础概念和理论的理解,要求学生掌握数据库管理系统的组成和功能,熟悉SQL语句的基本使用方法;填空题主要考查学生对数据库设计和优化的理解,要求学生熟悉关系数据库的概念和表的结构设计;应用题主要考查学生对信息系统开发过程和方法的掌握,要求学生能够利用数据库管理系统进行数据查询和报表生成。 本次考试内容涵盖了数据库管理系统的各个方面,对学生的理论基础和实践能力都有较高要求。考试题目涉及了数据库的基本概念、建模过程、查询语言的使用、事务管理等方面,要求学生熟悉并能够熟练运用。 总体而言,本次考试相对来说比较全面,既考察了学生的基础知识,又注重了实际应用能力的考查。对于备考的学生来说,需要多做题,并结合实际应用进行练习。同时,要加强对数据库管理系统的理论学习,掌握数据库的基本概念和操作方法,并能够熟练地使用SQL语句进行数据查询和管理。此外,还需要重点关注数据库设计和优化的相关知识。 希望考生能够认真复习,合理安排备考时间,全面掌握相关知识,顺利通过考试。加油!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HerbertHu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值