亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

字符串的整數編碼并將其用作決策樹(sklearn)的輸入是否會使拆分屬性離散或連續?

字符串的整數編碼并將其用作決策樹(sklearn)的輸入是否會使拆分屬性離散或連續?

慕標琳琳 2021-11-30 15:37:13
我必須使用決策樹分類器對某些數據進行分類。但是,屬性值是字符串,正如我在此處找到的那樣,它說字符串不能用作輸入。因此我對字符串使用了整數編碼。在這篇文章中,我發現傳遞整數編碼的數據可能會導致錯誤的答案,因為 sklearn 假設數據之間有順序。所以,唯一的出路是使用OneHotEncoder模塊。使用OneHotEncoder模塊增加了特征的數量(例如,如果有一個帶有值的屬性“價格” ['high','med','low'],單熱編碼將導致包含與實際屬性“價格”相關的 3 個屬性;這些可以解釋為['price-high','price-med', 'price-low']和屬性值將是 1 或 0,具體取決于數據),這是我不想要的,因為我必須以某種格式打印決策樹,這需要原始特征(例如,我需要“價格”)。有沒有辦法解決這個問題?
查看完整描述

1 回答

?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

我認為pd.get_dummies這會很有用,因為您想在創建單熱向量時跟蹤原始特征名稱。


例子:


df = pd.DataFrame({'price': ['high', 'medium', 'high', 'low'], 'some_feature': ['b', 'a', 'c','a']})

pd.get_dummies(df,columns=['price','some_feature'])


    price_high  price_low   price_medium    some_feature_a  some_feature_b  some_feature_c

0   1   0   0   0   1   0

1   0   0   1   1   0   0

2   1   0   0   0   0   1

3   0   1   0   1   0   0

當將此數據框提供給決策樹時,您可以更好地理解!


查看完整回答
反對 回復 2021-11-30
  • 1 回答
  • 0 關注
  • 335 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號