Python数据分析与可视化期末复习精要

1、可视化数据分析主要用了哪些图表,说明其作用和意义。

①柱状图:用于做比较。
②折线图:用于看数据变化的趋势。
③饼状图:用于看各部分的占比。
④散点图:用于二维数据的比较。
⑤气泡图:用于用户三维数据的比较。
⑥雷达图:用于四维以上数据的对比。

2、说明数据挖掘与数据可视化分析的区别与联系。

数据分析可以分为广义的数据分析和狭义的数据分析。
广义的数据分析就包括狭义的数据分析和数据挖掘,我们常说的数据分析就是指狭义的数据分析。

数据分析与数据挖掘的区别
数据分析(狭义):
(1)定义:简单来说,数据分析就是对数据进行分析。专业的说法,数据分析是指根据分析目的,用适当的统计分析方法及工具,对收集来的数据进行处理与分析,提取有价值的信息,发挥数据的作用。
(2)作用:它主要实现三大作用:现状分析、原因分析、预测分析(定量)。数据分析的目标明确,先做假设,然后通过数据分析来验证假设是否正确,从而得到相应的结论。
(3)方法:主要采用对比分析、分组分析、交叉分析、回归分析等常用分析方法;
(4)结果:数据分析一般都是得到一个指标统计量结果,如总和、平均值等,这些指标数据都需要与业务结合进行解读,才能发挥出数据的价值与作用;
数据挖掘:
(1)定义:数据挖掘是指从大量的数据中,通过统计学、人工智能、机器学习等方法,挖掘出未知的、且有价值的信息和知识的过程。
(2)作用:数据挖掘主要侧重解决四类问题:分类、聚类、关联和预测(定量、定性),数据挖掘的重点在寻找未知的模式与规律;如我们常说的数据挖掘案例:啤酒与尿布、安全套与巧克力等,这就是事先未知的,但又是非常有价值的信息;
(3)方法:主要采用决策树、神经网络、关联规则、聚类分析等统计学、人工智能、机器学习等方法进行挖掘;
(4)结果:输出模型或规则,并且可相应得到模型得分或标签,模型得分如流失概率值、总和得分、相似度、预测值等,标签如高中低价值用户、流失与非流失、信用优良中差等;

3、说明数据可视化分析的步骤及做可视化分析的意义。

数据可视化分析过程包括:数据处理,视觉编码和可视化生成。数据处理聚焦与数据的采集、清洗、预处、分析和挖掘。视觉编码聚焦于对光学图像进行接收、提取信息、加工变换、模式识别及存储显示;可视化生成则聚焦与将数据转成图形,并进行交互处理。
意义:数据可视化是人类理解数据的导航仪,运用于人类视觉认知相一致的图形展示数据内在结构与规律,从而增强数据理解与分析的效率。

4、试述matplotlib,seaborn和pyecharts的特点。

Matplotlib具有如下特性。

Matplotlib支持交互式和非交互式绘图。 可将图像保存成PNG 、PS等多种图像格式。 支持曲线(折线)图、条形图、柱状图、饼图。 图形可配置。 跨平台,支持Linux, Windows,Mac OS X与Solaris。

seaborn提供的一些特点是

在默认MatMattLIB美学中改进的几个内置主题:
1、选择颜色调色板的工具来绘制数据中的模式
2、用于可视化单变量和二变量分布或用于在数据子集之间进行比较的功能
3、拟合和可视化不同类型独立变量和因变量的线性回归模型的工具
4、可视化数据矩阵并使用聚类算法发现这些矩阵中的结构的函数
5、一种灵活估计统计时间序列数据的函数及其估计的不确定性表示
6、构造抽象网格的高级抽象,让您轻松地构建复杂的可视化

pyecharts特点

相较于matplotlib等传统绘图库,pyecharts语法更加简洁,更加注重数据的呈现方式而非图形细节

5、说明Pandas中选取行列方式loc和iloc的用法。

df.loc[] 只能使用标签索引,不能使用整数索引。当通过标签索引的切片方式来筛选数据时,它的取值前闭后闭,也就是只包括边界值标签(开始和结束)。

通过行索引 “Index” 中的具体值来取行数据

df.iloc[] 只能使用整数索引,不能使用标签索引,通过整数索引切片选择数据时,前闭后开(不包含边界结束值)。同 Python 和 NumPy 一样,它们的索引都是从 0 开始。
通过行号来取行数据

6、简述One-hot编码方法的原理和意义。

原理

One-Hot 编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候,其中只有一位有效。

意义

解决了分类器不好处理属性数据的问题
在一定程度上也起到了扩充特征的作用

7、如何处理缺失数据?(如果缺失的数据不可得,将采用何种手段收集)

首先判断缺失数据是否有意义,如果没有意义或者缺失数据的比例超过80%直接去掉。如果缺失数据有规律,则需根据其变化规律来推测次缺失值;如果数据没有规律,则用其他值代替:
如果数据符合正态分布,缺失值用期望值代替
如果数据是类型变量,则用默认类型值代替缺失值

8、Python数据可视化分析通常使用的环境、工具和库都有哪些?库功能是什么?

环境:我只知道我自己常用的是自己搭建的conda环境

工具:jupyter notebook

库: matplotlib、seaborn、Numpy、SciPy、Pandas、Scikit-learn

1.matplotlib

maplolib是Python中众多数据可视化库的鼻祖,其设计风格与20世纪80年代设计的商业化程序语言MATLAB十分接近,具有很多强大且复杂的可视化功能。matplolib 包含多种类型的API( Aplication Progam Iterface,应用程序接口),可以采用多种方式绘制图表并对图表进行定制。

2.seaborn

seaborm 是基于matplotlib进行高级封装的可视化库,它支持交互式界面,使绘制图表的功能变得更简单,且图表的色彩更具吸引力,可以画出丰富多样的统计图表。

3.Numpy——科学计算的基础包

快速高效多维的数组对象ndarray
对数组执行元素级的计算以及直接对数组执行数学运算的函数
读写硬盘上基于数组的数据集的工具
线性代数运算,傅里叶变换,以及随机数生成
将C、C++、Fortran代码集成到python

4.scipy——专门解决科学计算中各种标准问题域的模块的集合

scipy是基于numpy开发的高级模块,提供了许多数学算法和函数的可便捷地解决科学计算中的一些标准问题。例如:数值积分和微分方程求解、最优化,甚至包括信号处理等。

5.Pandas——数据分析核心库

提供了一系列能够快速、便捷地处理结构化数据的数据结构和函数。
高性能的数组计算功能以及电子表格和关系型数据库(如 SQL)灵活的数据处理功能。
复杂精细的索引功能,以便便捷地完成重塑、切片和切块、聚合及选取数据子集等操作。

6.Scikit-learn ——数据挖掘和数据分析工具

简单有效,可以供用户在各种环境下重复使用。
封装了一些常用的算法方法。
基本模块主要有数据预处理、模型选择、分类、聚类、数据降维和回归 6 个,在数据量不大的情况下,scikit-learn可以解决大部分问题。

9、简述Python中利用数据统计方法检测异常值的常用方法及其原理。

1.散点图方法观察 2. 箱线图分析 3. 3σ法则

原理

散点图

就观察。。。哈哈哈

箱线图

大于上限,小于下限为异常值

3σ法则

超出3σ之外的值为异常值

10、简述桑基图和平行坐标图的主要作用

桑基图(Sankey diagram)

即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。Pyecharts中利用Sankey绘制桑基图。

平行坐标图(Parallel Coordinates Plot)

是对于具有多个属性问题的一种可视化方法。在平行坐标图中,数据集的一行数据在平行坐标图中用一条折线表示,纵向是属性值,横向是属性类别(用索引表示)

11、描述数据清洗的一般步骤。

检测与处理缺失值。检测与处理重复值。检测与处理异常值。数据转换

12、数据可视化的意义:

数据可视化的意义在于帮助人们更好地分析数据,而信息的质量在很大程度上取决于其表达方式,分析由数字列表组成的数据所包含的含义,并将分析结果可视化

13、简述箱线图、核密度曲线图和小提琴图的区别与联系。

小提琴图其实是箱线图与核密度图的结合,箱线图展示了 分位数 的位置,小提琴图则展示了 任意位置的密度 ,通过小提琴图可以知道哪些位置的密度较高。

14、简述数据分析中要进行数据标准化的主要原因。

不同特征之间往往具有不同的量纲,由此造成数值间的差异很大。因此为了消除特征之间量纲和取值范围的差异可能会造成的影响,需要对数据进行标准化处理。

15、简述Pandas删除空缺值方法dropna中参数thresh的使用方法。

DataFrame.dropna( axis=0, how=‘any’, thresh=None, subset=None, inplace=False)

thresh=n表示保留至少含有n个非na数值的行
df.dropna(thresh=2) #表示保留至少含有2个非缺失值的行

16、简述Pandas中利用cut方法进行数据离散化的用法。

语法及参数

pandas.cut(x, bins, right=True, labels=None, retbins=False, precision=3, include_lowest=False, duplicates='raise', ordered=True)

参数解释:

x:分箱时输入的数组,必须为一位数组
bins:分类依据的标准,可以是int、标量序列或间隔索引(IntervalIndex)
right:是否包含bins区间的最右边,默认为True,最右边为闭区间,False则不包含
labels:要返回的标签,和bins的区间对应
retbins:是否返回bins,当bins作为标量时使用非常有用,默认为False
precision:精度,int类型
include_lowest:第一个区间是否为左包含(左边为闭区间),默认为False,表示不包含,True则包含
duplicates:可选,默认为{default 'raise', 'drop'},如果 bin 边缘不是唯一的,则引发 ValueError 或删除非唯一的。
ordered:默认为True,表示标签是否有序。如果为 True,则将对生成的分类进行排序。如果为 False,则生成的分类将是无序的(必须提供标签)

将数据的值域划分成具有相同宽度的区间,区间个数由数据本身的特点决定或由用户指定。Pandas提供了cut函数,可以进行连续型数据的等宽离散化。cut函数的基础语法格式为:

pandas.cut(x,bins,right=True,labels=None,retbins=False,precision=3)

17、简述词云的生成过程。

(1)首先使用pandas读取数据并将需要分析的数据转化为列表;
(2)对获得的列表数据利用分词工具jieba进行遍历分词;
(3)使用WordCloud设置词云图片的属性、掩码和停用词,并生成词云图像。

18/简述热力图、雷达图适用的场景和意义

热力图

热力图是数据可视化项目中比较常用的数据显示方式。热力图通过颜色变化程度直观反应出热点分布,区域聚集等数据信息。热力图实现过程就是通过简单的数学变化,将离散的点信息映射为图像。

适用场景

(1)热力图的优势在于“空间利用率高”,可以容纳较为庞大的数据。热力图不仅有助于发现数据间的关系、找出极值,也常用于刻画数据的整体样貌,方便在数据集之间进行比较(例如将每个运动员的历年成绩都浓缩成一张热力图,再进行比较)。
(2)如果将某行或某列设置为时间变量,热力图也可用于展示数据随时间的变化。例如,用热力图来反映一个城市一年中的温度变化,气候的冷暖走向,一目了然。

雷达图

雷达图也称为网络图,星图,蜘蛛网图,不规则多边形,极坐标图等。雷达图是以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法。轴的相对位置和角度通常是无信息的。雷达图相当于平行坐标图,轴径向排列。

适用场景:

雷达图适用于多维数据(四维以上),且每个维度必须可以排序,数据点一般6个左右,太多的话辨别起来有困难。

物联沃分享整理
物联沃-IOTWORD物联网 » Python数据分析与可视化期末复习精要

发表评论