数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换)

网址:【数据挖掘】2019年最新python3 数据分析与数据爬虫实战_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili https://www.bilibili.com/video/av22571713/?p=56
数据变换和数据规约是属于数据预处理。

数据变换

简单变换

1、数据变换的目的是将数据转化为更方便分析的数据。
2、简单变换通常使用函数变换的方式进行,常见的函数变换包括:开方,平方,对数等。

数据规范化

1、离差标准化(最小-最大标准化)——消除量纲(单位)影响,以及变异大小因素的影响。
x1=(x-min)/(man-min)
离差:是最大值和最小值的差。
我这里还是用当当的本地数据。
python读取csv文件的某一列或某几列

import pandas as pda
import numpy as np
data=pda.read_csv("E:/FHLAZ/sql_document/books2.csv",usecols=['price','comment'],encoding="ANSI")
#离差标准化
data2=(data-data.min())/(data.max()-data.min())
print(data2)

数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换)_第1张图片

2、标准差标准化(零-均值标准化)——消除单位影响以及变量自身变异影响
x1=(x-平均数)/标准差

标准差标准化后的数据大约有一般的数据小于0,有一半的数据大于0,平均数为0,标准差为1.

import pandas as pda
import numpy as np
data=pda.read_csv("E:/FHLAZ/sql_document/books2.csv",usecols=['price','comment'],encoding="ANSI")
#离差标准化
data2=(data-data.min())/(data.max()-data.min())
#print(data2)
#标准差标准化
data3=(data-data.mean())/data.std()
print(data3)

数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换)_第2张图片
3、小数定标规范化——消除单位影响
x1=x/10**(k)#这个是x除以10的k次方
k=log10(x的绝对值的最大值)#以10为底的x的绝对值最大值。

import pandas as pda
import numpy as np
data=pda.read_csv("E:/FHLAZ/sql_document/books2.csv",usecols=['price','comment'],encoding="ANSI")
#离差标准化
data2=(data-data.min())/(data.max()-data.min())
#print(data2)
#标准差标准化
data3=(data-data.mean())/data.std()
#print(data3)
#小数定标规范化
k=np.log10(data.abs().max())
data4=data/10**k
print(data4)

数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换)_第3张图片

离散化

离散化,就是将一些连续的数据离散化。
比如说1到10,1.001,1.002,1.003,就可以离散到到1,这样就可以把无限个数据离散到数个点,因此我们分析的不是无限个数据,而是有限个数据。
或者是一些有规律的数据,我们想要让他间隔更大一下,也就是说原本太密集了,我们也可以让他离散化。
离散化的方法
1、等宽离散化
将我们的属性的值划分为相同间隔的区间
等宽划分
在这里插入图片描述
非等宽划分
数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换)_第4张图片

import pandas as pda
import numpy as np
data=pda.read_csv("E:/FHLAZ/sql_document/books2.csv",usecols=['price','comment'],encoding="ANSI")
#离差标准化
data2=(data-data.min())/(data.max()-data.min())
#print(data2)
#标准差标准化
data3=(data-data.mean())/data.std()
#print(data3)
#小数定标规范化
k=np.log10(data.abs().max())
data4=data/10**k
#print(data4)
data5=data[u"price"].copy()#数据框
data6=data5.T
data7=data6.values#得到了他的一串数据,数组
k=3#分成3份
c1=pda.cut(data7,k,labels=["便宜","适中","贵"])#等宽离散化
#print(c1)
k=[0,50,100,150,data7.max()]
c2=pda.cut(data7,k,labels=["便宜","适中","有点贵","天价"])#非等宽离散化

数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换)_第5张图片
2、等频率离散化
就是将相同数量的记录放进每个区间内。也可以说是把相同频数的点放到每个区间内。
就是划分标准不同。
3、一维聚类离散化
会将我们的连续数据进行聚类,再将聚类弄到的东西进行处理,最终合并到一个属性,划分。

这里主要将等宽离散化,以价格数据为例。

属性构造

我们原来有一些属性,我们可以根据这些属性构建一些新的属性,写入一个文件里面,用这个新的属性可以干别的事情。
比如说当当商城的评论数除以价格,构建一个新的评论
P57 057、属性构造
P58 058、数据规约
P59 059、答疑
P60 060、文本挖掘 一
P61 061、文本挖掘 二
P62 062、答疑
P63 063、文本相似度分析一
P64 064、文本相似度分析二
P65 065、文本相似度分析三
P66 066、答疑
P67 067、Python数据建模概述
P68 068、Python数据分类实现过程
P69 069、常见分类算法
P70 070、knn算法(补录)
P71 071、KNN算法与贝克斯方法
P72 072、手写体数字识别
P73 073、答疑
P74 074、贝叶斯算法 上
P75 075、贝叶斯课程 (补录)
P76 077、回归算法
P77 078、决策树
P78 079、答疑
P79 080、决策树
P80 081、聚类
P81 082、答疑
P82 083、贝叶斯应用
P83 084、人工神经网络理论基础
P84 085、人工神经网络实现实战
P85 086、答疑
P86 087、Apriori算法与项目实战
P87 088、社交网络项目实战
P88 089、答疑
P89 090、微博接口开发上
P90 091、微博接口开发下
P91 094、文本分类及答疑

你可能感兴趣的:(数据分析与数据挖掘实战视频——学习笔记(九) 数据预处理(数据变换))