ML6: Sklearn OneHotencoding

from __future__ import unicode_literals
import sklearn.preprocession as sp 
raw_samples = np.array([
[3,-1.5,2,-5.4],
[0.4.-0.3,2.1],
[1,3.3,-1.9,-4.3]
    ])
print(raw_samples)
code_tables = []

for col in raw_samples.T:
    code_table = {}
    for val in col:
        code_table[val] = None
    code_tables.append(code_table)
for code_table in code_tables:
    size = len(code_table)
    for one,key in enumerate(sorted(code_table.keys())):
        code_table[key] = np.zeros(shape=size,dtype=int)
        code_table[key][one] = 1
ohe_samples = []
for raw_sample in raw_samples:
    ohe_sample = np.array([],dtype=int)
    for i,key in enumerate(raw_sample):
        ohe_sample = np.hstack((
ohe_samples,code_tables[i][key]
            ))
    ohe_samples.append(ohe_sample)
ohe_samples = np.array(ohe_samples)
print(ohe_samples)
ohe = sp.OneHotEncoder(sparse = False,dtype=int)
ohe_samples = ohe.fit_transform(raw_samples)
print(ohe_samples)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值