点滴:python数据集的文本标签转换成数值

数据科学中经常出现的标签为文本型的,因为需要转化为数值型,以便后续处理。

参考一、

  get_dummies 是利用pandas实现one hot encode的方式。详细参数请查看官方文档
  官方文档在这里

  get_dummies 前:
get_dummies 前
  get_dummies 后:
get_dummies 后

  另:pd.get_dummies(df.color)

         df = df.join(pd.get_dummies(df.color))

参考二、

  利用pandas的Categorical()

        import pandas as pd

        c = ['A','A','A','B','B','C','C','C','C']

        category = pd.Categorical(c)

        print category.codes

 

参考三、

  利用 sklearn

        from sklearn.preprocessing import LabelEncoder

        le = LabelEncoder()

        le.fit([1,5,67,100])

        le.transform([1,1,100,67,5])

    输出: array([0,0,3,2,1])

 

  #OneHotEncoder 用于将表示分类的数据扩维:

        from sklearn.preprocessing import OneHotEncoder

        ohe = OneHotEncoder()

        ohe.fit([[1],[2],[3],[4]])

        ohe.transform([2],[3],[1],[4]).toarray()

    输出:[ [0,1,0,0] , [0,0,1,0] , [1,0,0,0] ,[0,0,0,1] ]

 

参考四、

利用keras中的keras.utils.to_categorical方法

to_categorical(y, num_classes=None, dtype='float32')

将整型标签转为onehot。y为int数组,num_classes为标签类别总数,大于max(y)(标签从0开始的)。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值