数据变换

  • 简单变换
  1. 数据变换的目的是将数据转化为更方便分析的数据。
  2. 简单变换通常使用函数变换的方式进行,常见的函数变换包括:开放、平方、对数等。
  • 数据规范化
  1. 离差标准化–消除量纲(单位)影响以及变异大小因素的影响。(最小-最大标准化)
    x1 = (x - min) / (max - min)
  2. 标准差标准化–消除单位影响,以及变量自身变异影响。(零-均值标准化)
    x1 = (x - 平均数) / 标准差
  3. 小数定标规范化–消除单位影响
    x1 = x/10**(k)、k=log10(x的绝对值的最大值)
  • 离散化
    将一些连续的数据,离散化。
  1. 等宽离散化
  2. 等频率离散化
  3. 一维聚类离散化

等宽离散化

价格0-50,50-100,100-150区间。

import pymysql
import pandas as pd

db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123456', db='taobao')
sql = 'select price,comment from taob'
df = pd.read_sql(sql=sql, con=db)
data = df['price'].copy()
data = data.values
# k = 3
# 等宽离散化
# cut(数据,份数,标签)
# data1 = pd.cut(data, k, labels=['便宜', '适中', '有点贵'])
# print(data1)
# data2 = pd.cut(data, [0, 50, 100, 150])
# print(data2)
k = [0, 50, 100, 300, 500, 2000, data.max()]
data3 = pd.cut(data, k, labels=['非常便宜', '便宜', '适中', '有点贵', '很贵', '非常贵'])
print(data3)

等频率离散化

将相同数量的记录放进每个区间里面。

一维聚类离散化

  • 属性构造
import pymysql
import pandas as pd

db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123456', db='taobao')
sql = 'select * from myhexun'
df = pd.read_sql(sql=sql, con=db)
rate = df['comment']/df['hits']
df['评点比'] = rate
file = './data/hexun.xls'
df.to_excel(file, index=False)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值