前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pandas进阶

pandas进阶

作者头像
李智
发布2018-08-03 17:28:34
4720
发布2018-08-03 17:28:34
举报
文章被收录于专栏:李智的专栏李智的专栏

pandas使用get_dummies进行one-hot编码

代码语言:javascript
复制
import pandas as pd  
df = pd.DataFrame([  
            ['green', 'M', 10.1, 'class1'],   
            ['red', 'L', 13.5, 'class2'],   
            ['blue', 'XL', 15.3, 'class1']])  

df.columns = ['color', 'size', 'prize', 'class label']  

size_mapping = {  
           'XL': 3,  
           'L': 2,  
           'M': 1}  
df['size'] = df['size'].map(size_mapping)  

class_mapping = {label:idx for idx,label in enumerate(set(df['class label']))}  
df['class label'] = df['class label'].map(class_mapping)  
pd.get_dummies(df) #进行onehot编码
代码语言:javascript
复制
You can use assign, which assigns a new column to the dataframe and returns a new copy. This was added in version 0.16.0:

>>> df.assign(c = df.a / df.b)
    a  b  c
1  12  6  2
代码语言:javascript
复制
局部排序并归一化

def f(x):
    a = x.max()
    b = x.min()
    return x.map(lambda x:(x-b)/(a-b))

actions_res.loc[:,'rank_recent_view_time'] = actions_res.groupby('user_id')['actions_all_recent_view_time']\
        .rank(method='min',ascending=True).reset_index().iloc[:,-1]
actions_res['rank_recent_view_time'] = actions_res.groupby('user_id')['rank_recent_view_time'].apply(f)
代码语言:javascript
复制
actions = actions.assign(is_315_active = 1.0)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年03月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档