Python中的邏輯迴歸 - 資料重構



無論何時任何組織進行調查,他們都試圖從客戶那裡收集儘可能多的資訊,其想法是這些資訊在以後的某個時間點會以某種方式對組織有用。為了解決當前問題,我們必須提取與我們的問題直接相關的資訊。

顯示所有欄位

現在,讓我們看看如何選擇對我們有用的資料欄位。在程式碼編輯器中執行以下語句。

In [6]: print(list(df.columns))

您將看到以下輸出 -

['age', 'job', 'marital', 'education', 'default', 'housing', 'loan', 
'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays', 
'previous', 'poutcome', 'emp_var_rate', 'cons_price_idx', 'cons_conf_idx', 
'euribor3m', 'nr_employed', 'y']

輸出顯示資料庫中所有列的名稱。最後一列“y”是一個布林值,指示該客戶是否在銀行擁有定期存款。此欄位的值為“y”或“n”。您可以在作為資料一部分下載的banks-name.txt檔案中閱讀每列的描述和用途。

消除不需要的欄位

檢查列名,您會知道某些欄位與手頭的問題無關。例如,月份、星期幾、活動等欄位對我們沒有用處。我們將從我們的資料庫中刪除這些欄位。要刪除一列,我們使用如下所示的drop命令 -

In [8]: #drop columns which are not needed.
   df.drop(df.columns[[0, 3, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19]], 
   axis = 1, inplace = True)

該命令表示刪除第0、3、7、8等列。為了確保正確選擇索引,請使用以下語句 -

In [7]: df.columns[9]
Out[7]: 'day_of_week'

這將列印給定索引的列名。

刪除不需要的列後,使用head語句檢查資料。螢幕輸出如下所示 -

In [9]: df.head()
Out[9]:
      job   marital  default  housing  loan  poutcome    y
0     blue-collar    married  unknown yes no nonexistent 0
1     technician     married  no    no    no nonexistent 0
2     management     single   no    yes   no success     1
3     services       married  no    no    no nonexistent 0
4     retired        married  no    yes   no success     1

現在,我們只有我們認為對我們的資料分析和預測很重要的欄位。資料科學家的重要性在此步驟中體現出來。資料科學家必須為模型構建選擇合適的列。

例如,工作型別雖然乍一看可能無法說服所有人將其包含在資料庫中,但它將是一個非常有用的欄位。並非所有型別的客戶都會開通定期存款。低收入人群可能不會開通定期存款,而高收入人群通常會將其剩餘的錢存入定期存款。因此,工作型別在這種情況下變得非常重要。同樣,仔細選擇您認為與您的分析相關的列。

在下一章中,我們將準備資料以構建模型。

廣告