数据变换

1、数据变换

i、目的?

将数据转换成更容易分析的数据(预处理)

ii、常见的函数变换?

2、数据规范化

i、离差标准化(最小最大规范化):消除量纲(单位)影响以及变异大小因素的影响

x1=(x-min)/(max-min)

import pymysql
import pandas as pda
import numpy as npy
import matplotlib.pylab as pyl
conn = pymysql.connect(host="localhost",user="root",passwd="360421",db="employees")
sql="select salary from salaries"
data= pda.read_sql(sql,conn)
data.describe()
data1=(data-data.min())/(data.max()-data.min())

 

ii、标准差标准化(零-均值标准化):消除单位影响及变量自身变异影响

x1=(x-平均数)/标准差


data2=(data-data.mean())/(data.std())

 

iii、小数定标规范化

x1=x/10**(k)

k=log10(x的绝对值最大值)

k=npy.ceil(npy.log10(data.abs().max()))
data3=(data)/10**k

3、离散化:连续的数据处理不方便

i、等宽离散化

划分区间:1~1000:[0,50],[50,100],...,[950,1000]

data4=data[u"salary"].copy()       #u表示防止数据的变化
data5=data4.T
data6=data5.values
k=3     #表示待会儿要分组的组数
pda.cut(data6,k,labels=["上","中","下"])      #等差划分    abc待分数组,k表示组数,labels表示各组的标签
pda.cut(data6,[0,30000,70000,120000,180000],labels=["职员","主任","经理","CEO"])  
#非等差划分区间(0,3000],(3000,7000],(7000,12000],(12000,18000]   

ii、等频率离散化

 

iii、一维聚类离散化

(未完待续)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值