深度学习之pytjon的数据分析工具pandas
来源:互联网 发布:手机淘宝怎么指纹支付 编辑:程序博客网 时间:2024/05/22 17:27
pandas模块为我们提供了非常多的描述性统计分析的指标函数,如总和、均值、最小值、最大值等,我们来具体看看这些函数:
1、随机生成三组数据
- 1
- 2
- 3
- 4
- 5
- 6
- 7
2、统计分析用到的函数
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 必须注意的是,descirbe方法只能针对序列或数据框,一维数组是没有这个方法的
自定义一个函数,将这些统计指标汇总在一起:
- 1
- 2
- 3
- 4
- 5
执行该函数,查看一下d1数据集的这些统计函数值:
- 1
- 2
结果:
在实际的工作中,我们可能需要处理的是一系列的数值型数据框,如何将这个函数应用到数据框中的每一列呢?可以使用apply函数,这个非常类似于R中的apply的应用方法。
将之前创建的d1,d2,d3数据构建数据框:
- 1
- 2
- 3
- 4
结果:
3、加载CSV数据
- 1
- 2
- 3
- 4
- 5
描述性统计1:describe()
- 1
- 2
描述性统计2:describe(include=[‘number’])
- 1
- 2
- 1
含义:
- count:指定字段的非空总数。
- unique:该字段中保存的值类型数量,比如性别列保存了男、女两种值,则unique值则为2。
- top:数量最多的值。
- freq:数量最多的值的总数。
- 1
连续变量的相关系数(corr)
- 1
协方差矩阵(cov)
- 1
删除列
- 1
排序
- 1
- 2
多表连接
准备数据:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
student:
score:
内连接
- 1
- 2
- 注意,默认情况下,merge函数实现的是两个表之间的内连接,即返回两张表中共同部分的数据。可以通过how参数设置连接的方式,left为左连接;right为右连接;outer为外连接。
左连接
- 1
- 2
- 左连接中,没有Score的学生Score为NaN
缺失值处理
现实生活中的数据是非常杂乱的,其中缺失值也是非常常见的,对于缺失值的存在可能会影响到后期的数据分析或挖掘工作,那么我们该如何处理这些缺失值呢?常用的有三大类方法,即删除法
、填补法
和插值法
。
删除法
当数据中的某个变量大部分值都是缺失值,可以考虑删除改变量;当缺失值是随机分布的,且缺失的数量并不是很多是,也可以删除这些缺失的观测。
替补法
对于连续型变量,如果变量的分布近似或就是正态分布的话,可以用均值替代那些缺失值;如果变量是有偏的,可以使用中位数来代替那些缺失值;对于离散型变量,我们一般用众数去替换那些存在缺失的观测。
插补法
插补法是基于蒙特卡洛模拟法,结合线性模型、广义线性模型、决策树等方法计算出来的预测值替换缺失值。
- 此处测试使用上面学生成绩数据进行处理
查询某一字段数据为空的数量
- 1
- 2
直接删除缺失值
- 1
删除前:
删除后:
- 默认情况下,dropna会删除任何含有缺失值的行
删除所有行为缺失值的数据
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 1
填充数据
使用一个常量来填补缺失值,可以使用fillna函数实现简单的填补工作:
1、用0填补所有缺失值
- 1
2、采用前项填充或后向填充
- 1
- 1
3、使用常量填充不同的列
- 1
4、用均值或中位数填充各自的列
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 很显然,在使用填充法时,相对于常数填充或前项、后项填充,使用各列的众数、均值或中位数填充要更加合理一点,这也是工作中常用的一个快捷手段。
数据打乱(shuffle)
实际工作中,经常会碰到多个DataFrame合并后希望将数据进行打乱。在pandas中有sample
函数可以实现这个操作。
- 1
- 这样对可以对df进行shuffle。其中参数frac是要返回的比例,比如df中有10行数据,我只想返回其中的30%,那么frac=0.3。
有时候,我们可能需要打混后数据集的index(索引)还是按照正常的排序。我们只需要这样操作
阅读全文
0 0
- 深度学习之pytjon的数据分析工具pandas
- Python数据分析之pandas学习
- Python数据分析之pandas学习
- Python数据分析之pandas学习
- Python数据分析之pandas学习
- Python机器学习(一)数据分析工具Pandas
- Python数据分析之pandas学习(一)
- Python数据分析之pandas学习(二)
- Python数据分析之pandas学习(11/3)
- (转载)Python数据分析之pandas学习
- 利用python进入数据分析之pandas的使用
- 数据分析之Pandas-05数据加载
- 利用python进行数据分析(三):pandas--处理数据的工具
- python数据分析之(3)pandas
- python数据分析之pandas包
- Python数据分析之pandas基础
- Python数据分析之pandas统计分析
- 数据分析之Pandas——数据结构
- 比特币源码解析(19)
- (第一次写)n个数中最大公约数不为“1”的最大个数。
- 信息增益
- CBK发声世界发展论坛首脑峰会启动仪式
- Source Insight(vs2012,ultraedit) 中Tab键设置为4个空格代替
- 深度学习之pytjon的数据分析工具pandas
- 二维色素数组生成图片
- iOS AppStore 转让APP
- Error:Execution failed for task ':app:clean'. > Unable to delete directory 解决方案
- SQL server 事务介绍,创建与使用
- java版括号匹配问题
- 基于SpringBoot使用Spring jpa实现对Oracle表的增、删、改、查的Spring WebService
- Chrome插件 postman的使用方法详解
- 单词游戏