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

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

將分類列添加到預測模型中

將分類列添加到預測模型中

墨色風雨 2021-08-24 15:37:07
我得到了一個客戶數據框和有關他們活動的信息,我建立了一個模型來預測他們是否購買產品。我的標簽是一列“did_buy”,如果客戶購買,則分配 1,否則分配 0。我的模型考慮了數字列,但我還想將分類列添加到預測模型中,但我不確定如何轉換它們并在我的 X 列車中使用它們。這是我的數據框列的一瞥:Company_Sector         Company_size  DMU_Final  Joining_Date  CountryFinance and Insurance       10        End User   2010-04-13   FrancePublic Administration       1         End User   2004-09-22   France還有一些列:linkedin_shared_connections   online_activity  did_buy   Sale_Date            11                        65           1      2016-05-23            13                        100          1      2016-01-12
查看完整描述

2 回答

?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

讓我建議您首先確定哪些分類變量是有序的(訂單計數,例如好、非常好、壞等),哪些是名義變量(順序無關緊要,例如顏色)。對于序數,您可以使用 map 如下:


    Category

0   Excellent

1   Excellent

2   Bad

3   Good

4   Bad

5   Very Good

6   Very Bad


df.Category = df.Categoy.map({'Excellent':5, 'Very Good':4, 

                              'Good':3, 'Fair':2, 'Bad':1, 'Very Bad':0})


    Category

0   5

1   5

2   1

3   3

4   1

5   4

6   0

對于名義變量,您可以實施虛擬變量方法。示例:假設您的分類變量有兩個值“Native”和“Foreign”。您可以創建一個名為“本機”的列,其中 1 表示本機,0 表示外來??梢詾槎鄠€類別實施。


data = pd.DataFrame({"Origin": ['Native', 'Native', 'Foreign', 'Native', 'Foreign']})


    Origin

0   Native

1   Native

2   Foreign

3   Native

4   Foreign


data['Native'] = pd.get_dummies(data['Origin'], drop_first=True)

data.drop("Origin", axis = 1, inplace = True)

這將導致:


    Native

0   1

1   1

2   0

3   1

4   0


查看完整回答
反對 回復 2021-08-24
  • 2 回答
  • 0 關注
  • 204 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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