缺失值的產生機制

2021-07-23 22:39:35 字數 645 閱讀 3295

缺失值可分為兩類:一類是這個值實際存在但是沒有被觀測到,例如客戶的性別;另一類是這個值實際就不存在,例如,在調查顧客購買的洗髮液品牌時,如果某位顧客根本沒有購買任何洗髮液,那麼這位顧客購買的洗髮液品牌缺失。如何處理缺失值是乙個很複雜的課題,有興趣的讀者可以參閱這方面的專著。

缺失值的產生有三種機制:

1.完全隨機缺失(missingcompletelyatrandom)

某個變數是否缺失與它自身的值無關,也與其他任何變數的值無關。例如,由於測量裝置出故障導致某些值缺失。

2.隨機缺失(missingatrandom)

在控制了其他變數已觀測到的值後,某個變數是否缺失與它自身的值無關。例如,人們是否透露收入可能與性別、教育程度、職業等因素有關係。

如果這些因素都觀測到了,而且儘管收入缺失的比例在不同性別、教育程度、職業的人群之間有差異,但是在每一類人群內收入是否缺失與收入本身的值無關,那麼收入就是隨機缺失的。

3.非隨機缺失(missingnotatrandom)

即使控制了其他變數已觀測到的值,某個變數是否缺失仍然與它自身的值有關。例如,在控制了性別、教育程度、職業等已觀測因素之後,如果收入是否缺失還依賴於收入本身的值,那麼收入就是非隨機缺失的。

尋找隨機產生的缺失數

今天給大家說一下之前面試的時候遇到的一道面試題,當時還是想了很久的,其實超簡單,可能是面試因為緊張的原因,當時看到這道題時大腦一片空白,失去了邏輯推理能力,想了有10分鐘才恍然大悟。題目 給定一組連續的整數,例如 1,2,3,100,但其中缺失乙個數字 利用random函式隨機生成 試找出缺失的數字...

缺失值的處理

缺失值的處理 from pandas import series import numpy as np stringser series a b np.nan,d e isnull 顯示空值 stringser.isnull notnull 顯示非空值 stringser.notnull strin...

缺失值 刪除缺失值行 列,以及特定的行 列

缺失值處理 df.isnull 是缺失值返回true,否則範圍false df.isnull sum 返回每列包含的缺失值的個數 df.dropna 直接刪除含有缺失值的行 df.dropna axis 1 直接刪除含有缺失值的列 df.dropna how all 只刪除全是缺失值的行 df.dr...