1

我在功能工程中查看了Kaggle的fill null方法。有些玩家用另一個對象值填充NA。如何在特徵工程中填充對象屬性中的空值?

例如,性別欄中有'男','女'和NA值。該方法用另一個對象值填充NA,例如'中間'。之後,它將沒有null的性屬性對待,熊貓不會找到null。

我想知道該方法對機器學習模型的性能或良好的特徵工程有非常好的影響嗎? 除此之外,在數據集中沒有知識的發現之後,還有沒有其他的好方法來填充NA?

回答

2

首先,它取決於您的模型是否可以管理NA(如xgboost)。第二,是輟學的行爲說明(像一個沮喪的男人更可能跳過任務)

有一個整個文學關於這個問題。這樣做的主要途徑有:

  1. 剛落行
  2. 裝滿更換丟失的數據(中位數,最多見於值...)
  3. 填寫丟失的數據,並添加一些錯誤它

所以在這裏,你可以離開它NA和使用xgboost,刪除uncomplete行或將男性和女性之間的最頻繁的值

幾個建議,如果你婉走得更遠:

  1. 試圖理解爲什麼的數據都是缺少
  2. 執行方案的敏感性分析您選擇
0

這在很大程度上取決於你的數據。 但仍然有幾件事你可以做,並檢查它們是否工作。

1.如果缺少值與行數相比較少,則最好刪除它們。

2.如果存在大的缺失值,則創建一個「IsMissing」功能(其他值爲NULL 0),有時候效果很好。

3.如果您有大量數據,並且您發現該功能非常重要,則可以使用您的列車數據訓練一個模型來預測男性/女性。然後使用空值行作爲測試數據預測它們的價值(男/女)。

它關於創造力和邏輯的一切。你所做的每個假設都不好,因爲你可以看到我上面描述的最後一種方法假設NULL值只能有兩個值(M/F)可能並非如此。

因此,玩弄不同的手段,看看什麼對你的數據有用。

希望它有幫助!

相關問題