当我用Python进行数据分析,我分析什么

当我用Python进行数据分析,我分析什么_第1张图片

在数据分析领域中第三方包用到最多的是pandas、numpy与matplotlib。

Pandas是一个强大的分析结构化数据的工具集;它的使用基础是numpy(提供高性能的矩阵运算);用于数据挖掘和数据分析,同时也提供数据清洗功能。

Pandas主要包含两个数据类型:

  1. Series
  2. DataFrame

Pandas比numpy好用。

numpy(Numerical Python的简称)是基于Python的高性能科学计算和数据分析的基础包。提供了python对多维数组对象的支持:ndarray,具有矢量运算能力,快速、节省空间。numpy支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

matplotlib是Python的绘图库,主要做数据可视化图表。

一、知识点

1. 一维数据分析

numpy与pandas这两个包都有表示一维数组的特殊数据结构,在numpy中的一维数据结构叫数组Array,在pandas中的一维数据结构叫Series,Series比Array的功能更多,因为pandas的Series是建立在numpy的基础上的。

当我用Python进行数据分析,我分析什么_第2张图片

1.1 使用numpy的array进行一维数据分析

示例:

定义列表:

当我用Python进行数据分析,我分析什么_第3张图片

1)索引查询元素:

2)切片访问:

当我用Python进行数据分析,我分析什么_第4张图片

3)遍历循环访问:

当我用Python进行数据分析,我分析什么_第5张图片

4)使用dtype查看数据类型:

dtype详细信息参考网址:

Data type objects (​docs.scipy.org/doc/numpy-1.10.1/reference/arrays.dtypes.html

5)统计计算功能,如:平均值mean()、标准差std()

当我用Python进行数据分析,我分析什么_第6张图片

6)向量化运算,如:向量相加、向量乘以标量

当我用Python进行数据分析,我分析什么_第7张图片

1.2 使用pandas的series进行一维数据分析

示例:

定义一维数据结构:

当我用Python进行数据分析,我分析什么_第8张图片

注意索引:

当我用Python进行数据分析,我分析什么_第9张图片

当我用Python进行数据分析,我分析什么_第10张图片

1)获取描述统计信息:

当我用Python进行数据分析,我分析什么_第11张图片

2)获取值

iloc属性用于根据位置顺序获取值、loc属性用于根据索引获取值

当我用Python进行数据分析,我分析什么_第12张图片

3)向量化运算:向量相加

当我用Python进行数据分析,我分析什么_第13张图片

不同的向量相加时,索引不同会导致不相同的索引的数据为空值None

4)处理缺失值(空值)

当我用Python进行数据分析,我分析什么_第14张图片

方法2中,fill_valiue=0将空值填充为0,去除缺失值,再将s2与s1相加

2. 二维数据分析

二维数据结构既有行又有列,类似于一个二维Excel表格。

在numpy中用数组Array创建二维数组,而在pandas中用数据框DataFrame创建二维数组。pandas有额外的功能,处理表格比numpy更方便。

2.1 使用numpy的array进行二维数据分析

示例:

当我用Python进行数据分析,我分析什么_第15张图片

创建如上图表格的二维数组结构:

当我用Python进行数据分析,我分析什么_第16张图片

1)获取元素

当我用Python进行数据分析,我分析什么_第17张图片

2)按数轴进行计算

axis是numpy的数轴参数

当我用Python进行数据分析,我分析什么_第18张图片

当我用Python进行数据分析,我分析什么_第19张图片

2.2 使用pandas的数据框DataFrame进行二维数据分析

示例:

当我用Python进行数据分析,我分析什么_第20张图片

创建如上图表格的数据框:

定义有序的数据框

当我用Python进行数据分析,我分析什么_第21张图片

1)平均值计算(按列计算)

当我用Python进行数据分析,我分析什么_第22张图片

2)获取值

iloc属性用于根据位置顺序获取值

当我用Python进行数据分析,我分析什么_第23张图片

loc属性用于根据索引获取值

当我用Python进行数据分析,我分析什么_第24张图片

3)复杂查询

切片功能:

当我用Python进行数据分析,我分析什么_第25张图片

条件判断:

当我用Python进行数据分析,我分析什么_第26张图片

4)查看数据集描述统计信息

当我用Python进行数据分析,我分析什么_第27张图片

图解每一列的统计数值:

当我用Python进行数据分析,我分析什么_第28张图片

当我用Python进行数据分析,我分析什么_第29张图片

二、案例实操

1. 提出问题

对朝阳医院的销售数据计算业务指标月均消费次数、月均消费金额,客单价,并指出消费趋势

2. 理解数据

2.1 读取Excel的数据

路径中最好不要有中文,或者特殊符号啥的,不然路径会提示错误找不到。最好将文件放到一个简单的英文路径下。

当我用Python进行数据分析,我分析什么_第30张图片

2.2 打印前几行,查看所有字段

当我用Python进行数据分析,我分析什么_第31张图片

2.3 查看有多少行,多少列

2.4 查看每一列的数据类型

当我用Python进行数据分析,我分析什么_第32张图片

3. 数据清洗

3.1 选择子集

所有的列在数据分析中都需要用到,本案例不需要选择子集

3.2 列名重命名

当我用Python进行数据分析,我分析什么_第33张图片

3.3 缺失数据处理

python缺失值有3种:

1)Python内置的None值

2)在pandas中,将缺失值表示为NA,表示不可用not available。

3)对于数值数据,pandas使用浮点值NaN(Not a Number)表示缺失数据。

后面出来数据,如果遇到错误:说什么foloat错误,那就是有缺失值,需要处理掉

所以,缺失值有3种:None,NA,NaN

dropna函数详细使用地址:

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.dropna.html​pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.dropna.html

当我用Python进行数据分析,我分析什么_第34张图片

3.4 数据类型转换

字符串转换为数值(浮点型)

当我用Python进行数据分析,我分析什么_第35张图片

运行后,会报警告SettingWithCopyWarning。一般信息有两列,一类是Warning警告信息,一类是Error错误信息。警告的信息不用管,我们只关注错误类型的信息

字符串转换为日期数据类型

补充知识点(字符串分割):

当我用Python进行数据分析,我分析什么_第36张图片

知识点(字符串分割)运用:

当我用Python进行数据分析,我分析什么_第37张图片

注意:

如果运行后报错:AttributeError: 'float' object has no attribute 'split',是因为Excel中的空的cell读入pandas中是空值(NaN),这个NaN是个浮点类型,一般当作空值处理。所以要先去除NaN在进行分隔字符串

补充知识点(None和NaN有什么区别):

None是Python的一种数据类型,NaN是浮点类型 两个都用作空值

当我用Python进行数据分析,我分析什么_第38张图片

字符串转换为日期数据类型,继续

当我用Python进行数据分析,我分析什么_第39张图片

当我用Python进行数据分析,我分析什么_第40张图片

3.5 数据排序

by:按哪几列排序,ascending=True 表示升序排列,,ascending=True表示降序排列。

na_position=True表示排序的时候,把空值放到前列,这样可以比较清晰的看到哪些地方有空值。

官网文档:

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.sort_values.html​pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.sort_values.html

当我用Python进行数据分析,我分析什么_第41张图片

当我用Python进行数据分析,我分析什么_第42张图片

3.6 异常值处理

当我用Python进行数据分析,我分析什么_第43张图片

4. 构建模型

4.1 求月均消费次数

月均消费次数=总消费次数 / 月份数

当我用Python进行数据分析,我分析什么_第44张图片

当我用Python进行数据分析,我分析什么_第45张图片

4.2 求月均消费金额

月均消费金额 = 总消费金额 / 月份数

当我用Python进行数据分析,我分析什么_第46张图片

4.3 求客单价

客单价(per customer transaction)是指商场(超市)每一个顾客平均购买商品的金额,客单价也即是平均交易金额。

客单价=总消费金额 / 总消费次数

当我用Python进行数据分析,我分析什么_第47张图片

5. 数据可视化

Python经验分享

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

Python学习路线

这里把Python常用的技术点做了整理,有各个领域的知识点汇总,可以按照上面的知识点找对应的学习资源。
在这里插入图片描述

学习软件

Python常用的开发软件,会给大家节省很多时间。
在这里插入图片描述

学习视频

编程学习一定要多多看视频,书籍和视频结合起来学习才能事半功倍。
在这里插入图片描述

100道练习题

在这里插入图片描述

实战案例

光学理论是没用的,学习编程切忌纸上谈兵,一定要动手实操,将自己学到的知识运用到实际当中。
在这里插入图片描述
最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

当我用Python进行数据分析,我分析什么_第48张图片

你可能感兴趣的:(python,数据分析,pandas)