如何对连续型数据进行离散化处理,并进行OneHot编码?
生活随笔
收集整理的這篇文章主要介紹了
如何对连续型数据进行离散化处理,并进行OneHot编码?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
如何對連續型數據進行離散化處理,并進行OneHot編碼,最終將OneHot編碼作為特征因子輸入模型?
什么是OneHot編碼
One-Hot編碼是分類變量作為二進制向量的表示。這首先要求將分類值映射到整數值。然后,每個整數值被表示為二進制向量,除了整數的索引之外,它都是零值,它被標記為1。
通過這個簡單的例子,比如這個特征是指的學生的一個性別,那么這個性別只有男女兩類?那么我們通過這個 one hold 編碼出來,就是男用 1,0 表示,女用 0,1 表示。年紀按照小學、初中、高中來進行一個編碼,那么小學就可以用100,那么初中用 010 ,高中用 001 。如果說這個特征,它有幾類的話,那么得有幾列數字,然后其中每一列如果那個值為 1 的話,就表示其中的一個分類。那么從這種分類的就是類別型的一個特征。沒有用 one hode 之前就是那種簡單的一個分類,比如12345 這種就直接拿去訓練了。
代碼示例
df = m11.data.read() #分箱 col_name = 'pe_ttm_bins' def cal_bins(df):bins=5df[col_name] = np.array(pd.qcut(df.pe_ttm_0, bins, labels=range(0, bins)))return df df = df.groupby('date').apply(cal_bins) display("分箱結果:",df[['date','instrument','pe_ttm_0','pe_ttm_bins']]) #換成one-hot編碼 df = pd.get_dummies(df,columns=[col_name]) display("one-hot編碼結果:",df[['date','instrument','pe_ttm_0','pe_ttm_bins_0','pe_ttm_bins_1','pe_ttm_bins_2','pe_ttm_bins_3']])輸出結果
源碼克隆
點此克隆源碼
講解視頻
可以詳細看工程師的視頻講解:
如何對連續性數據進行離散化處理
總結
以上是生活随笔為你收集整理的如何对连续型数据进行离散化处理,并进行OneHot编码?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HbuilderX指定部分区域查找和替换
- 下一篇: 霍尔效应技术提供紧凑型电流测量传感器