下面是小编为大家整理的Python大数据处理与分析-习题答案.docx(精选文档),供大家参考。
第 第 1 1 章
1. 简述什么是 Python 以及 Python 有哪些特点。
答:
Python 是 1989 年荷兰人 Guido van Rossum 发明的一种面向对象的解释型编程语言。Python 语言简洁、易读以及可扩展性好,语法非常清晰,而且 Python 的拓展库丰富,具有脚本语言中最丰富和强大的类库。Python 语言及其众多的扩展库构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。
2.Python 在 在 Linux 系统的安装主要分为哪几步。
答:
(1)检查 Python 版本(2)下载源码包(3)解压编译源码(4)安装 Python(5)调整系统默认 Python 指向 3. 简述 Anaconda 的特点和作用。
答:
Anaconda 是基于 Python 的数据处理和科学计算平台,它内置了许多非常有用的第三方库,其内部包含了 conda、Python 在内的超过 180 个科学包及其依赖项。Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。安装Anaconda,就相当于把 Python 和一些如 Numpy、Pandas、Scrip、Matplotlib 等常用的库自动安装好了,比在常规 Python 环境下安装这些组件更容易。
总结起来,Anaconda 具有四大特点:①开源;②集成安装;③高性能使用Python 和 R 语言;④免费的社区支持。
4. 简述 Jupyter 和 和 PyCharm 的区别。
答:
Jupyter Notebook 是一个交互式笔记本,一种模块化的 Python 编辑器,支持运行 40 多种编程语言。它的本质是一个 Web 应用程序,便于创建和共享程序文档,数学方程,可视化和 markdown 等。在 Jupyter 中,可以把大段的 Python 代码碎片化处理,分开每一段来运行。在软件开发中,Jupyter 可能显得并没有那么好用,这个模块化的功能反而会破坏掉程序的整体性。但是当在做数据处理、分
析、建模、观察结果等的时候,Jupyter 模块化的功能不仅会提供更好地视觉体验,更能大大缩小运行代码及调试代码的时间,同时还会让整个处理和建模的过程变得异常清晰。
Pycharm 是一种 Python IDE,其有一整套可以帮助用户在使用 Python 语言开发时提高其效率的工具,如调试、语法高亮、Project 管理、代码跳转、智能提示、自动补全、单元测试、脚本控制等。此外,该 IDE 还提供了用户支持 Django 框架下的专业 Web 开发。Pycharm 作为专业的 IDE,比 Jupyter Notebook 更适合完整项目的开发,而 Jupyter Notebook 则更适合数据分析与建模。
第 第 2 2 章
1. 简述什么是 NumPy ,如何安装 NumPy。
。
答:
NumPy(Numerical Python)是 Python 的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比 Python 自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
NumPy 的安装需要在电脑上打开 cmd,然后使用 pip 工具安装。
2. 数组对象的属性有哪些? 答:
属性 具体说明 ndarray.ndim 维度个数,也就是数组轴的个数,比如一维、二维、三维等 ndarray.shape 数组的维度。这是一个整数的元组,表示每个维度上数组的大小。例如,一个 n 行和 m 列的数组,它的 shape 属性为(n,m) ndarray.size 数组元素的总个数,等于 shape 属性中元组元素的乘积 ndarray.dtype 描述数组中元素类型的对象,既可以使用标准的 Python 类型创建或指定,也可以使用 NumPy 特有的数据类型来指定,比如NumPy.int32、NumPy.float64 等 ndarray.itemsize 数组中每个元素的字节大小。例如,元素类型为 float64 的数组有 8(64/8)个字节,这相当于 ndarray.dtype.itemsize
3.Python 中数组的自增自减运算有什么特点? 答:
Python 中没有“--”或“++”运算符,因此,对变量进行自增自减需要使用“+=”或“-=”运算符来完成,运算的结果不是赋值给一个新数组,而是修改实际数据,即原来的数值发生了改变。
4. 求下列矩阵的逆:
array1=np.array([[1,4,7],[2,5,8],[3,6,9]]) 答:
import NumPy as np array1=np.array([[1,4,7],[2,5,8],[3,6,9]])
#创建一个二维数组 np.linalg.inv(array1) 5. 编程题:使用 NumPy 数组对象,创建两个 3*3 的矩阵,并计算矩阵乘法。
答:
import NumPy.matlib import NumPy as np array1=np.array([[2,4],[6,8]])
#创建一个二维数组 array2=np.array([[22,44],[66,88]]) #创建一个二维数组 np.dot(array1,array2)
#使用 dot()函数求数组的乘积 6. 计算 1+ 13+15+17+ ⋯+199 的和。
答:
import NumPy as np array1=np.arange(1,100,2) sum=0 for i in array1:
sum+=(1/i) print(sum)
第 第 3 3 章
1. 简述什么是 Pandas ,如何安装 Pandas ? 答:
Pandas 是基于 NumPy 的一种工具,该工具是为解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas 提供了大量能使我们快速便捷地处理数据的函数和方法,是使Python 成为强大而高效的数据分析环境的重要因素之一。
Pandas 的安装需要在电脑上打开 cmd,然后使用 pip 工具安装 2. 简述 Pandas 和 和 NumPy 的区别与联系。
答:
NumPy 中的 ndarray 用于处理多维数值型数组,重点在于进行数值运算,无索引。Pandas 中的 Series 类似于 DataFrame 的子集,DataFrame 中的每一列都可以看作是一个 Series,有索引,方便进行数据的查询,筛选,所以 Pandas 重点在于进行数据分析。在数学与统计方法上,NumPy 中的 ndarray 只能进行数值型统计,而 Pandas 中的 DataFrame 既可以进行数值型,也可以进行非数值型统计。
3.Series 对象和 DataFrame 对象有什么区别? 答:
Series 是 Pandas 中最基本的对象,类似于一维数组的对象,由一组数据和一组与之相关的数据标签(索引)组成。DataFrame 对象的数据结构跟 excel 表相似,其目的是将 Series 的使用场景由一维扩展到多维,它由按一定顺序排列的多列数据组成,各列的数据类型可以有所不同。
4. 如何使用对象快速导入导出数据? 答:
导入数据使用函数 read_csv(filrpath,sep,names,encoding)。
导出数据使用 to_csv(filrpath,sep,names,encoding)。
5. 尝试掷骰子 100 次,在 excel 表格里记录每一次的值,尝试将此数据使用 Pandas做统计分析。
答:
使用导入数据使用 read_csv(filrpath,sep,names,encoding)函数将数据导入 Pandas 变量中,然后使用各种统计函数对数据进行分析 。
6. 创建学生成绩 excel 表,快速完成成绩统计和分析。
答:
使用导入数据使用函数 read_csv(filrpath,sep,names,encoding)将数据导入 Pandas 变量中,然后使用各种统计函数对数据进行分析,如3.5案例所示,然后完成数据分析和修改补充后,导出数据使用 to_csv(filrpath,sep,names,encoding)函数。
第 第 4 4 章
1. 简述使用 Matplotlib 进行数据可视化的绘图步骤。
答:
(1)导入第三方包(2)准备数据(3)函数绘图(4)完善图表(5)展示结果 2. 折线图、柱状图、直方图、散点图、等值 线 图分别用什么函数绘制,它们的常用参数有哪些? 答:
(1)折线图:pyplot.plot()
常用参数:x, y, format_string, **kwargs (2)柱状图:pyplot.bar()
常用参数:x, height, width, bottom, align, data, **kwargs (3)直方图:
pyplot.hist()
常用参数:
x, bins, weights, bottom, histtype, align, orientation, rwidth, color, label, stacked, **kwargs (4)散点图:pyplot.scatter()
常用参数:
x, y, s, c, marker, cmap, vmin, vmax, alpha, linewidths, edgecolors, **kwargs (5)等值线图:pyplot.contourf() 常用参数:
x, y, z, levels, **kwargs
pyplot.contour()
常用参数:
x, y, z, levels, **kwargs
3. 简述基础类元素和容器类元素分别有哪些,它们的关系是什么? 答:
基础类元素:
线(line)、点(marker)、文字(text)、图例、图表标题、图片(image)等 容器类元素:图形、坐标图形、坐标轴(axis)和刻度(tick)。
容器类元素可以包含许多基础类元素并将它们组织成一个整体,它们也有层级结构:图形包含坐标图形;坐标图形包含坐标轴;坐标轴又包含刻度。
4. 常用的图形元素设置函数有哪些,它们的作用分别是什么? 答:
1. 添加图例和标题。添加图例一般使用 legend()函数,添加标题使用 title()函数。
2. 调整刻度格式和设置刻度标签。对 x,y 轴的刻度范围设置一般用到 xlim()和 ylim()两个函数;标题设置一般使用 xlabel()和 ylabel()两个函数;内容和格式设置一般使用 xticks()和 yticks()两个函数。
3.为图表添加网格线。绘制网格线一般使用 grid()函数。
4.绘制参考线。绘制参考线一般使用 axhline()和 axvline()两个函数。
5.添加图表注释。绘制注释一般使用 annotate()和 text()函数,分别用于添加指向型注释文本和无指向型注释文本。
6.向统计图形添加表格。绘制表格一般使用 table()函数。
5. 简述怎样使用用颜色参数和颜色映射来调整图形。
答:
1. 在函数中使用颜色参数。a.使用英文全称来给 color 参数赋值从而进行颜色设置。b.使用英文缩写来进行颜色设置。c.
使用 Hex 模式的#RRGGBB 字符串来进行颜色设置。d.用三元(RGB)或四元(RGBA)元组来进行颜色配置。
2.在函数中使用颜色映射表。a. 使用给关键字参数指定颜色映射表名的方式来配置图表颜色。b. 使用给 matplotlib.pyplot.set_cmap()函数传入相应颜色映射表名的方式来配置图表颜色。
常用的颜色映射表有:autumn、bone、cool、copper、flag、gray、hot、hsv、jet、pink、spring、summer、winter 等。
第 第 5 5 章
1. 字符串有哪些方法?它们的特点分别是什么? 答:
字母小写 str.lower(),字母大写 str.upper(),统计次数 str.count(sub),将字符串 str按 sep 分割 str.split(sep=None),字符替换 str.replace(old,new)等方法,特点是对字符串分别实现各自对应的功能。
2. 什么是正则表达式? 答:
正则表达式(英文:Regular Expression),在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。
3.Python 中异常值如何处理? 答:
(1)重复数据的预处理 重复数据指多次出现的数据。对于一般数量可控的重复数据,通常采用的方法是简单的比较算法剔除。对于重复的可控数据而言,一般通过代码实现对信息的匹配比较,进而确定,剔除不需要的数据。
(2)异常数据的预处理 异常数据是无意义的数据,这个词通常作为损坏数据的同义词使用,但现阶段其意义已经扩展到包含所有难以被计算机正确理解和翻译的数据,如非结构化文本。任何不可被源程序读取和运用的数据,不管是已经接收的、存储的,还是改变的,都被称为噪声数据。
(3)缺失数据的预处理 缺失数据表示数据不完整,信息丢失,因而无法完成相关匹配和计算,如信息统计中年龄和性别丢失的情况。缺失数据的处理主要有 4 种方式:均值补差、利用同类均值补差、极大似然估计、多重补差。从简单意义上讲,均值补差和利用同类均值补差是思维简单的处理方式,在实际中应用比较广泛。极大似然估计是在概率上用最大可能的方式处理数据的缺失问题,其存在局部极值而且收敛速度过慢,计算较为复杂等问题。多重补差是为每一个缺失值提供一个可能的替换
值,以确保其无关性,构成替换阈,再根据其自由组合,从而对每一个替换结果进行总体预测,对结论进行总体评判。多重补差这种思想来源于贝叶斯极大似然法,但比该方法在预判性上产生更多的多元化操作。
4. 如何整理数据并对数据进行预处理? 答:
数据预处理有多种方法:数据清理,数据集成,数据变换,数据归约等。数据清洗是对“脏”数据的处理,需要被清理的数据一般有以下类型:重复数据、异常数据、缺失数据。数据集成是把不同来源、格式、特点性质的数据在逻辑上或物理上有机地集中。数据变换主要找到数据的特征表示,用维变换成转换方法减少有效变量的数目或找到数据的不变式,包括规格化、归约、切换、旋转和投影等操作。数据归约是指在尽可能保持数据原貌的前提下,最大限度地精简数据量。
5. 数据降维的好处是什么? 答:
运用 PCA 对高维数据进行降维,有一下几个特点:
(1)数据从高维空间降到低维,因为求方差的缘故,相似的特征会被合并掉,因此数据会缩减,特征的个数会减小,这有利于防止过拟合现象的出现。但 PCA并不是一种好的防止过拟合的方法,在防止过拟合的时候,最好是对数据进行正则化; (2)使用降维的方法,使算法的运行速度加快; (3)减少用来存储数据的内存空间; (4)从 x(i)到 z(i)的映射过程中,对训练数据进行降维,然后对测试数据或验证数据进行降维; 6. 什么是稀疏矩阵?如何使用字典学习? 答:
稀疏表示就是用较少的基本信号的线性组合来表达大部分或者全部的原始信号。其中,这些基本信号被称作原子,是从过完备字典中选出来的;而过完备字典则是由个数超过信号维数的原子聚集而来的。可见,任一信号在不同的原子组下有不同的稀疏表示。假设用一个 M*N 的矩阵表示数据集 X,每一行代表一个样本,每一列代表样本的一个属性,一般而言,该矩阵是稠密的,即大多数元素不为 0。稀疏表示的含义是寻找一个系数矩阵 A(K*N)以及一个字典矩阵 B(M*K),使得 B*A 尽可能的还原 X,且 A 尽可能的稀疏。A 便是 X 的稀疏表
示。
像列表一样,“字典”是许多值的集合。但不像列表的下标,字典的索引可以使用许多不同数据类型,不只是整数。字典的索引被称为“键”,键...
【Python大数据处理与分析-习题答案.docx(精选文档)】相关文章: