python|pandas|5.4转换数据

1.哑变量处理类别型数据

在这里插入图片描述

#哑变量处理类别型数据方法get_dummies
pandas.get_dummies(data,prefix=None,prefix_sep=',',dummy_na=False,columns=None,sparse=False,drop_first=False)

在这里插入图片描述

2.使用等宽法、等频法、聚类分析法离散化连续数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

import pandas as pd
import numpy as np
detail=pd.read_csv('E:\大三上\张宇萌\实习任务安排(2019-10-10)\detail.csv',encoding='gbk')

#哑变量处理
data=detail.loc[0:5,'dishes_name']#抽取部分数据做演示
print('初始\n',data)
print('结果\n',pd.get_dummies(data))

#使用等宽法、等频法、聚类分析法离散化连续数据
#等宽法
price=pd.cut(detail['amounts'],5)
print('离散化后5条记录售价分布为\n',price.value_counts())
#等频法
def sameratecut(data,k):
    w=data.quantile(np.arange(0,1+1.0/k,1.0/k))
    data=pd.cut(data,w)
    return data
#对菜品售价进行等频法离散化
result=sameratecut(detail['amounts'],5).value_counts()
print('菜品数据等频离散化后各个类别数目分布状况为:\n',result)
#聚类分析法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

任务实现

#对dishes_name特征进行哑变量处理
data=detail.loc[:,'dishes_name']
print(data.iloc[:5])
print(pd.get_dummies(data).iloc[:5,:5])
#自定义等频法离散化函数
def sameratecut(data,k):
    w=data.quantile(np.arange(0,1+1.0/k,1.0/k))
    data=pd.cut(data,w)
    return data
#菜品售价等频法离散化
result=sameratecut(detail['amounts'],5).value_counts()
print(result)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值