119人加入学习
前置知识:新零售-无人智能售货机商务数据分析
价格 免费

sklearn库的datasets模块集成了部分数据分析的经典数据集,可以使用这些数据集进行数据预处理,建模等操作。

datase模块常用数据及德加载函数与解释如下

load_boston 回归

fetch_california_housing 回归

load_digits 分类

load_breast_cancer 分类,聚类

load_iris 分类,聚类

load_wine 分类

使用sklearn进行数据预处理会用到sklearn提供的统一接口——转换器。

加载后的数据集可以视为一个字典,几乎所有的sklearn数据集均可以使用data,target,feature_names,DESCR分别获取数据集的数据,标签,tezhengmingcheng

[展开全文]

1、离散化

连续特征的离散化就是在数据的取值范围内设定若干个离散的划分点,将取值范围划分为一些离散化的区间,最后用不同的符号或整数值代表落在每个子区间中的数据值

2、等宽法

将数据的值与分成具有相同宽度的区间,区间的个数有数据本身的特点决定或用户指定,与制作频率分布表类似。pandas提供了cut函数,可以进行连续性数据的等宽离散化。

使用等宽法的缺陷为:等宽法离散化对数据分布具有较高的要求,若数据分布不均匀,那么各个类的数目也会变得非常不均匀,有些区间包含许多数据,而另外一些区间的数据及少,这会严重损坏所建立的模型。

3、等频法

cut函数虽不能直接实现等频离散化,但是可以通过定义将相同数量的纪录放进每个区间。

等频离散化的方法避免了类分布不均匀的问题,但同时却也有可能将数值非常接近的两个值分到不同的区间以满足每个区间中固定的数据个数。

4、基于聚类分析的方法

一维聚类的方法包括两步:

(1)将连续型数据用聚类算法进行聚类。

(2)处理聚类得到的簇,将合并到一个簇的连续型数据做同一标记。

聚类分析的离散化方法需要用户指定簇的个数,用来决定生产的区间数

K-Means聚类分析的离散化方法可以很好的根据现有特征的数据分布状况进行聚类,但是由于K-Means算法本身的缺陷,用该方法进行离散化时依旧需要制定离散化后类别的数目。cishixuyaopeih

[展开全文]

4、离散标准化的特点

数据的整体分布情况并不会随礼茶标准化而发生变化。

当数据和最小值相等的时候,通过离差标准化可以发现数据变为0

若数据极差过大就会出现数据在离差标准化后数据之间的差值非常小的情况。

若数据集中某个数值很大,则离差标准化的值就会接近于0,并切相互之间差别不大。

[展开全文]

1、异常值

异常值是指数据中心个别值的数值明显偏离其余的数值,有时也称为离群点,检测异常值就是检验数据中是否有录入错误以及是否含有不合理的数据

异常值的存在对数据分析十分危险,如果计算分析过程的数据有异常值,那么会对结果产生不良影响,从而导致分析结果产生偏差乃至错误

2、拉依达法则

该罚则是假设一组监测数据只含有随机误差,对原始数据进行计算处理得到标准差,然后按一定的概率确定一个区间,认为误差超过这个区间的就属于异常值

3、箱线图分析

箱型图提供了识别异常值的一个标准,即异常值通常被定义为小于QL-1.5IQR或大于QU+1.5IQR的值。

QL称为下四分位数

QU称为上四分位数

IQR称为四位分数间距

[展开全文]

3、检测预处理缺失值

pandas提供了识别缺失值的方法isnull以及识别非缺失值的方法notnull,这两种方法在使用时返回的都是布尔值true和false

4、删除法

删除法分为删除观测记录和删除特征两种,利用减少样本量来换取信息完整度的一种方法,是一种简单的缺失值处理方法。

pandas提供了简便的删除缺失值的方法dropna,该方法既可以删除观测记录,亦可以删除特征。

5、替换法

缺失值所在特征为数值型时,通常利用其均值。中位数和中枢等描述其集中趋势的的统计量来代替缺失值。

缺失值所在特征为类别型时,则选择使用众数来替换缺失值

pandas提供了缺失值替换的方法名为fillna

6、插值法

线性插值(求解线性方程得到缺失值)、多项式插值(拟合一个多项式,利用该多项式求解缺失值)和样条插值(有一些多项式组成,每个多项式由相邻两个数据点决定)

[展开全文]

1.记录重复

方法一利用列表去重,自定义去重函数:

def delRep(list1):

  list2=[]

  for i in list1:

     if i not in list2:

           list2.append(i)

   return list2

方法二是利用集合(set)的元素是唯一的特性去重,如dish_set=set(dishes)

比较上述两种方法,方法一代码冗长,方法二代码简单但会导致数据的排列发生改变。

pandas提供了一个名为drop_duplicates的去重方法。该方法只对dataframe或者series类型有效。

2.特征重复

去除连续性特征重复可利用特征间的相似度将两个相似度为1的特征去除一个。

但是通过相似度矩阵去重存在一个弊端,该方法只能对数值型重复特征去重,类别性特征之间无法通过计算相似系数来衡量相似度。

[展开全文]

4、重叠合并数据

数据分析和处理过程中若出现两份数据的内容几乎一致的情况,但是某些特征在其中一张表上是完整的,而在另外一张表上的数据则是缺失的时候,可以用combine

[展开全文]

3、主键合并

merge函数也有左连接、右连接、内连接、外连接,但比起sql数据库中的join,merge函数还可以在hebingzhong

[展开全文]

2、合并数据

横向堆叠,即将两个表在x轴向拼接在一起,可以使用concat函数。

pandas.concat(objs,axis=0,join='outer',join_axes=None,ignore_index=False,keys=None,levels=None,names=None,verify_integrity=False,copy=True)

纵向堆叠,append方法可用于纵向合并两张表。但append方法实现纵向表堆叠有前提条件,是两张表列名需要完全一致。

[展开全文]

交叉表是一种特殊的透视表,主要用于计算分组频率。利用pandas提供的crosstab函数可以制作交叉表。

[展开全文]

transform

transform能对整个DataFrame的所有元素操作。

transform还能对DataFrame分组后的对象groupby进行操作,实现组内离差标准化等操作。

若在计算离差标准化的时候结果中有NaN,这是由于根据离差标准化公式,最大值和最小值相同的情况下分母是0.二分母为0的数在python中表示为NaN

[展开全文]

apply方法

DataFrame.apply(func,axis=0,broadcast=False,raw=False,reduce=None,args=(),**kwds)

func 接受functs。表示应用于每行、列的函数

axis 接受0或1.代表操作的轴向

broadcast 接受boolearn。表示是否进行广播

raw 接受boolearn。表是否直接将ndarray对象传递给函数

reduce 接受boolearn或者None。表示返回值的格式。

 

[展开全文]

groupby方法参数

DataFrame.groupby(by=None,axis=0,level=None,as_index=True,sort=True,group_keys=True,squeeze=False,**kwargs)

by 接收list,string,mapping或generator。用于确定进行分组的依据。

axis 接收int。表示操作的轴向,默认对列进行操作。

level 接收int 或者索引名。代表标签所在级别。

as_index 接收boolearn。 表示聚合后的聚合标签是否以DataFrame索引形式输出。

sort 接收boolearn。表示是否对分组依据分组标签进行排序

group_keys 接收boolearn。表示是否显示分组标签的名称。

squeeze 接收boolearn。表示是否在允许的情况下对返回数据进行降维。

GroupBy对象常用的描述性统计方法

count 计算分组数目

head 返回每组前n个值

max 返回最大值

mean 返回平均值

median 返回中位数

cumcount 对每组组员进行标记,0~n-1。

size 返回每组的大小

min 返回最小值

std 返回标准差

sum 返回和

[展开全文]

授课教师

人工智能金牌讲师

课程特色

视频(68)
下载资料(1)