《Python数据分析与应用从数据获取到可视化》配套资源课后习题及答案_第1页
《Python数据分析与应用从数据获取到可视化》配套资源课后习题及答案_第2页
《Python数据分析与应用从数据获取到可视化》配套资源课后习题及答案_第3页
《Python数据分析与应用从数据获取到可视化》配套资源课后习题及答案_第4页
《Python数据分析与应用从数据获取到可视化》配套资源课后习题及答案_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

经典word整理文档,仅参考,双击此处可删除页眉页脚。本资料属于网络整理,如有侵权,请联系删除,谢谢!第1一、填空题1.的目的在于将隐藏在一大批看似杂乱无章的数据信息集中提炼出来有用的数据。中包含了、Python在内的超过180个科学包及其依赖项。2.3.JupyterNotebook是一个支持Markdown的Web应用程序。二、判断题代码、数学方程、可视化和1.)2.Python)3.如果要卸载指定环境中的包,则直接使用remove)三、选择题1.下列选项中,用于搭接数据仓库和保证数据质量的是(A.数据收集B.数据处理C.数据分析D.数据展现2.关于Anaconda的说法中,下列描述错误的是(A.Anaconda是一个可以对包和环境进行统一管理的发行版本。B.Anaconda包含了conda、Python在内的超过180个科学包及其依赖项C.Anaconda是完全开源的、付费的D.Anaconda避免了单独安装包时需要配置或兼容等各种问题3.关于AnacondaA.AnacondaNavigatorB.AnacondaPromptC.SpyderD.JupyterNotebook4.下面列出的数据分析库中,用于绘制数组的2D图形的是(A.NumPyB.PandasC.MatplotlibD.NLTK四、简答题1.什么是数据分析?2.请简述数据分析的基本过程。3.Python做数据分析有哪些优势?第2一、填空题1.在NumPy中,可以使用数组对象________执行一些科学计算。2.如果ndarray.ndim执行的结果为2,则表示创建的是_____维数组。3.NumPy的数据类型是由一个类型名和元素________的数字组成。4.如果两个数组的大小()不同,则它们进行算术运算时会出现________机制。5.花式索引是NumPy的一个术语,是指用整数________进行索引。二、判断题1.通过empty())2.如果没有明确地指明数组中元素的类型,则默认为float64)3.)4.)5.当通过布尔数组索引操作数组时,返回的数据是布尔数组中False对应)三、选择题1.下列选项中,用来表示数组维度的属性是(A.ndimB.shapeC.sizeD.dtype2.下面代码中,创建的是一个3行3列数组的是(1.arr=np.array([1,2,3])2.arr=np.array([[1,2,3],[4,5,6]])3.arr=np.array([[1,2],[3,4]])4.np.ones((3,3))3.请阅读下面一段程序:arr_2d=np.array([[11,20,13],[14,25,16],[27,18,9]])print(arr_2d[1,:1])执行上述程序后,最终输出的结果为(D.[20,25]4.请阅读下面一段程序:arr=np.arange(6).reshape(1,2,3)print(arr.transpose(2,0,1))执行上述程序后,最终输出的结果为(A.[[[25]][[03]][[14]]]B.[[[14]][[03]][[25]]]C.[[[03]][[14]][[25]]]D.[[[0][3]][[1][4]][[2][5]]]5.下列函数或方法中,用来表示矢量化三元表达式的是(A.where()B.cumsum()C.sort()D.unique()四、简答题1.什么是矢量化运算?2.实现数组广播机制需要满足哪些条件?五、程序题1.创建一个数组,数组的shape为(5,0),元素都是0。2.创建一个表示国际象棋棋盘的8*8数组,其中,棋盘白格用0填充,棋盘黑格用1填充。第3一、填空题1.Pandas是一个基于的Python库。2.Pandas中有两个主要的数据结构分别为和。3.Series结构由4.可以使用和组成。创建一个Series对象。和5.数据排序可以分为和。二、判断题1.在DataFrame中每列的数据都可以看做是一个Series)2.使用describe)3.方法是将元组列表转换为MultiIndex)4.函数和read_table())5.Series)三、选择题1.下列选项中,描述不正确的是(A.Pandas中只有Series和DataFrame这两种数据结构B.Series是一维的数据结构C.DataFrame是二维的数据结构D.Series和DataFrame都可以重置索引2.下列选项中,描述正确是(A.Series是一维数据结构,其索引在右,数据在左B.DataFrame是二维数据结构,并且该结构具有行索引和列索引C.Series结构中的数据不可以进行算术运算D.sort_values方法可以将Series或DataFrame中的数据按照索引排序3.下列方法中,可以将元组转换为MultiIndex对象的是(A.from_tuples()B.from_arrays()C.from_product()D.from_list()4.下列选项中,哪个方法可以一次性输出多个统计指标(A.describe()B.mean()C.median()D.sum()5.请阅读下面一段程序:ser_obj=pd.Series(range(1,6),index=[5,3,0,4,2])ser_obj.sort_index()执行上述程序后,最终输出的结果为(A.5130422345B.C.D.023453524154320142532403554321四、简答题1.简述Series和DataFrame的特点。2.简述什么是层次化索引。五、程序题1.现有如下图所示的数据,请对该数据进行以下操作:(1)使用DataFrame创建该数据。(2)将图中的B列数据进行按降序排序。(3)将排序后的数据写入到csv文件,并命名为。第4一、填空题1.数据清洗的目的是让数据具有、、、、、等特点。2.产生缺失值或空值的原因有和。3.方法可以将转换为。4.concat函数的堆叠方式有和和。5.拉依达原则在检测异常值时必须保证数据遵守二、判断题。1.rename)2.方法可以删除重复值()。3.)4.当一个具有多层次索引的DataFrame对象经过后,会返回一个Series)5.在使用)三、选择题1.)A.数据清洗的目的是为了提高数据质量B.异常值一定要删除C.可使用drop_duplicates()方法删除重复数据D.concat()函数可以沿着一条轴将多个对象进行堆叠2.请阅读下面一段程序:series_obj=Series([None,4,NaN])pd.isnull(series_obj)执行上述程序后,最终输出的结果为(A.012TrueFalseTrueB.C.D.012TrueTrueFalse012FalseTrueTrue012TrueTrueTrue3.)A.isnull()B.notnull()C.dropna()D.fillna()4.)A.concat()函数可以沿着一条轴将多个对象进行堆叠B.函数可以根据一个或多个键将不同的DataFrame进行合并C.可以使用rename()方法对索引进行重命名操作D.unstack()方法可以将列索引旋转为行索引5.请阅读下面一段程序:importnumpyasnpser_obj.sort_values()执行上述程序后,最终输出的结果为(A.43.0503212.04.05.06.0NaNB.1NaN230546.05.04.02.03.0C.502.04.032415.06.03.0NaND.0123454.0NaN6.05.03.02.0四、简答题1.请简述数据预处理的常用操作。2.常用的数据合并操作有哪些?五、程序题1.现有如下图所示的两组数据,其中A组中B列数据存在缺失值,并且该列数据为intB组中的数据均为str类型。接下来,请对这些数据进行以下操作:(1)使用DataFrame创建这两组数据。(2)现在需要使用B组中的数据对A组中的缺失值进行填充并保持数据类型一致。(3)将合并后A组中索引名为key的索引重命名为D。第5一、填空题1.分组聚合的流程分为2.分组键的形式可以有、、、、。、。3.方法会对产生的标量值进行操作。4.当对一个DataFrame对象进行分组后会返回一个对象。二、判断题1.分组聚合的原理一般分为拆分-应用-合并()。2.只要使用方法分组就会产生一个DataFrameGroupby)3.使用agg)4.使用()5.apply)三、选择题1.下列选项中,关于groupby)A.分组键可以是列表或数组,但长度不需要与待分组轴的长度相同B.可以通过DataFrame中的列名的值进行分组C.可以使用函数进行分组D.可使用series或字典分组2.下列选项中,关于agg)A.agg方法中func参数只能传入一个函数B.agg方法中func参数可以传入多个函数C.agg方法中func参数可以传入自定义函数D.agg方法不能对产生的标量值进行广播3.下列选项中,关于方法说法正确的是()。A.不会与原数据保持相同形状B.会对产生的标量值进行广播操作C.func参数只能传入内置函数D.func参数可以传入多个内置函数4.下列选项中,关于apply)A.可以使用自定义函数B.可以接收多个函数C.可以使用广播功能D.返回的结果一定与原数据的形状相同5.请阅读下面一段程序:(pd.DataFrame([[2,3],]*3,columns=['A','B'])).apply(lambdax:x+1)执行上述程序后,最终输出的结果为(A.AB032132232B.AB023123223C.AB034134234D.AB043143243四、简答题1.请简述分组聚合的流程。2.请简述常用的分组方式。五、程序题1.现有如下图所示的学生信息,请根据图中的信息完成以下操作:(1)根据年级信息为分组键,对学生信息进行分组,并输出大一学生信息。(2)分别计算出四个年级中身高最高的同学。(3)计算大一学生与大三学生的平均体重。第6一、填空题1.bokeh是针对2.数据可视化常见的统计图表有3.在使用Matplotlib绘制图表时,需要导入4.在直方图中一般使用横轴表示,用纵轴表示5.在使用Matplotlib绘制柱状图时可以使用pyplot模块中的使用的交互式可视化库。(写出3个即可)、、。。函数。二、判断题1.seaborn是基于Matplotlib)Figure对象可以划分多个绘图区域,每个绘图区域都是一个Axes)2.绘制图表时,可以使用subplot())3.Matplotlib)4.Matplotlib)5.三、选择题1.下列选项中,关于Matplotlib)Matplotlib是一个Python3D绘图库A.可输出PNG、PDF等格式B.渐进、交互的方式实现数据可视化C.使用简单D.2.下列选项中,不属于Seaborn)A.Seaborn是基于Matplotlib的可视化库基于网格绘制出更加复杂的图像集合多个内置主题及颜色主题B.C.D.可以处理大量的数据流3.下列选项中,关于boken)boken是一个专门针对Web浏览器使用的交互式可视化库A.Plotting接口用于构建各种组装图形元素B.Models接口可以为开发者提供最大的灵活性C.Charts库可直接使用,不需要单独安装D.4.)A.hist()B.()C.bar()D.pie()5.)A.分布B.变化C.饼图显示一个数据序列中的各项的大小与各项总和的比例D.条形图是由一系列高度不等的纵向条纹或线段表示数据分布情况四、程序题1.现有如图6-40所示的股票数据,根据图中的数据,完成以下需求:图6-1股票数据(1)使用DataFrame创建该股票数据。(2)以证券简称为x轴,最新价为y轴使用条形图展示,将生成的条形图图以shares_bar.png为文件名保存在桌面上。第7一、填空题1.________是指多个时间点上形成的数值序列。2.ARIMA模型是一种用于时间序列________的常见统计模型。3.Pandas中的频率是由一个________和一个乘数组成的,比如7D。4.________是指将时间序列从一个频率转换到另一个频率的处理过程。5.在Pandas中,使用________类表示一个标准的时间段或时期。二、判断题1.最基本的时间序列类型是以时间戳为索引的Series)2.如果相同频率的两个Period对象进行数学运算,那么计算结果为它们的)3.任何类型的Pandas)4.DatetimeIndex)5.三、选择题1.下列选项中,不可以用做Pandas对象索引的是(A.PeriodB.DatetimeIndexC.PeriodIndexD.MultiIndex2.请阅读下面一段程序:period1=pd.Period('2015/6/1')print(period1+50)执行上述程序,最终输出的结果为(A.20150718B.20150719C.20150720D.201507213.请阅读下面一段程序:importnumpyasnpdate_index=pd.date_range(start="2018/08/10",periods=5)date_se=pd.Series(np.arange(5),index=date_index)sorted_se=date_se.sort_index()print(sorted_se.truncate(after='2018-8-11'))执行上述程序,最终输出的结果为(A.2018-08-122018-08-13B.232018-08-122018-08-132018-08-14C.2342018-08-102018-08-112018-08-12D.0122018-08-102018-08-11014.下列函数中,用于创建固定频率DatetimeIndex对象的是(A.shift()B.date_range()C.period_range()D.asfreq()5.关于重采样的说法中,下列描述错误的是(A.重采样是将时间序列从一个频率转到另一个频率B.升采样的时间颗粒是变小的C.时间序列数据在降采样时,总体的数据量是增加的D.时间序列数据在降采样时,总体的数据量是减少的四、简答题1.时间序列的数据有哪几种?2.什么是降采样?什么是升采样?五、程序分析题行的结果,否则请说明编译失败的原因。1.代码一:date_index=pd.date_range('2018/08/10')ser_obj=pd.Series(11,date_index)print(ser_obj)2.代码二:period1=pd.Period('2017/1')period2=pd.Period('2017/6')print(period2-period1)3.代码三:date_index=pd.date_range('2018/09/10','2018/09/13')ser_obj=pd.Series(11,date_index)ser_obj['2018\09\12']第8一、填空题1.常见的情感极性分析方法主要有2.文本相似度的检测是根据3.余弦相似度与向量的幅值和方法。公式进行检测。,与向量的方向。4.文本分类属于5.文本分类的步骤包括二、判断题的机器学习。、、、。1.)2.)3.)4.)5.jieba)三、选择题1.下列选项中,关于nltk库的描述不正确的是(A.nltk擅长处理英文文本B.nltk包括分词、词性标注、命名实体识别及句法分析等C.nltk是一个免费的、开源的、社区驱动的项目D.nltk库只能处理英文文本2.根据中文的特点以下不属于分词算法的是(A.基于规则的分词方法B.基于统计的分词方法C.基于理解的分词方法D.基于动态的分词方法3.下列选项中,不属于jieba分词模式(A.支持精确模式B.支持全模式C.支持搜索引擎模式D.支持繁体分词模式4.阅读下面一段程序:sentence='Lifeisshort,youneedPython.'words=nltk.word_tokenize(sentence)stop_words=stopwords.words('english')remain_words=[]forwordinwords:print(remain_words)执行上述程序,最终输出的结果为(A.['Life','short',',','need','Python','.']B.['Life','short','need','Python',]C.['Life','is','short',',','need','Python','.']D.['Life','short',',','you','need','Python','.']5.阅读下面一段程序:sentence='人生苦短,我用Pyhton'terms_list=jieba.cut(sentence,cut_all=True)print(''.join(terms_list))执行上述程序,最终输出的结果为(A.人生苦短我用PyhtonB.人生苦短我用PyhtonC.人生苦短我用PyhtonD.人生苦短我用Pyhton四、简答题1.什么是文本分析?2.请简述常用的文本情感分析方法。3.请简述检测文本相似度的流程。第1章五、填空题1.数据分析2.Anaconda3.实时六、判断题1.错2.对3.错七、选择题1.B2.C3.D4.C八、简答题1.数据分析是指,用适当的统计分析方法对收集来的大量数据进行分析,从中提取有用信息和形成结论,并加以详细研究和概括总结的过程。2.明确目的和思路、数据收集、数据处理、数据分析、数据展现。3.(12)拥有一个巨大且活跃的科34)人工智能时代的通用5)方便对接其它语言。第2章六、填空题1.ndarray2.二维3.位长4.广播5.数组或列表七、判断题1.错2.对3.对4.对5.错八、选择题1.B2.D3.A4.C5.A九、简答题1.答案:NumPy这个过程叫做矢量化运算。2.答案:两个数组的某一维度等长,或其中一个数组为一维数组。十、程序题1.答案:importnumpyasnparr=np.zeros(5)print(arr)2.答案:importnumpyasnparr=np.zeros((8,8),dtype=int)arr[1::2,::2]=1arr[::2,1::2]=1print(arr)第3章一、填空题1.Numpy2.SeriesDataFrame3.索引数据字典4.列表5.按置排序按索引排序二、判断题1.对2.对3.错4.错5.错三、选择题1.A2.B3.A4.A5.B四、简答题1.Series是一个类似于一维数组的对象,它能够保存任何类型的数据,主要由一组数据和与之相关的索引两部分构成。DataFrame是一个类似于二维数组的对象,它每列的数据可以是不同的数据类型。DataFrameDataFrame的索引有行索引和列索引。2.层索引,并且能够以低纬度形式表示高维度的数据。五、程序题(1)答案:df_obj=pd.DataFrame(columns=col_data,data=df_data)df_obj(2)答案:sort_values_data=df_obj.sort_values(by=['B'],ascending=False)sort_values_data(3)答案:sort_values_data.to_csv(r'E:\数据分析\write_data.csv')'写入完毕'第4章一、填空题1.完整性唯一性权威性合法性一致性2.人为原因3.列索引4.横向堆叠5.正态分布二、判断题1.对机械原因行索引纵向堆叠内连接外连接2.错3.对4.错5.错三、选择题1.B2.A3.C4.D5.A四、简答题1.的预处理操作有数据清洗、数据合并、数据重塑、数据转换等,在这几空值和缺失的检测、重复值的处理、异常值的处理等。2.在Pandas中常用的数据合并操作有:函数表示沿着一条轴将多个对象进行堆叠、函数表示根据一个或多个键将不同的对象进行合并、join()方法表示根据索引或指定的列来合并数据、combine_first()方法表示填充合并数据。五、程序题(1)答案:importpandasaspdimportnumpyasnpgroup_a=pd.DataFrame({'A':[2,3,5,2,3],'B':['5',np.nan,'2','3','6'],'C':[8,7,50,8,2],'key':[3,4,5,2,5]})print(group_a)print(group_b)(2)答案:group_a=group_bine_first(group_b)group_a(3)答案:group_a.rename(columns={'key':'D'})第5章一、填空题1.拆分应用合并2.列表或数组函数DataFrame对象某列的名称字典或Series对象3.广播4.DataFrameGroupBy二、判断题1.对2.错3.错4.对5.对三、选择题1.A2.A3.B4.C5.D四、简答题1.分组聚合的流程一般为拆分、应用、合并。拆分是将数据集按照一定规则分成若干组;应用是对这些分组的数据进行一系列操作的过程;合并是将这些执行操作后的结果进行整合。2.常用的分组方式主要有4种,分别为:列表或数组,列表或数组的长度需要与带分组轴的长度一致、DataFrame中某列的名称、字典或Series对象、函数。五、程序题(1)答案:大一',''三','大四'],姓名李宏卓','李思真','张振海',赵鸿飞白蓉','马腾飞',张晓凡金紫萱','金烨'],年龄身高160,180,167,170,185],70,52,53,73]})data=studnets_data.groupby('年级')Freshman=dict([xforxindata])['大一']print(Freshman)(2)答案:deldata['年级']print(data)(3)答案:Junior=dict([xforxindata])['大三']print(Freshman['体重'].apply('mean'))print(Junior['体重'].apply('mean'))第6章一、填空题1.浏览器2.直方图3.pyplot4.数据的类型5.bar饼图折线图分布情况二、判断题1.对2.对3.错4.错5.对三、选择题1.A2.D3.D4.B5.D四、程序题(1)答案:stock_data=pd.DataFrame({'证券代码':['000609','000993','002615','000795','00276

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论