Python 中的缺失值及其處理

2021-07-26 05:45:30 字數 1422 閱讀 2033

缺失值處理用到的主要工具為 numpy 庫和 pandas庫中的有關函式,要匯入 numpy 和 pandas:

import numpy as np

import pandas as pd

在 python 中,特殊的常量 none 通常被理解為缺失值的一種,我們構建了乙個包含有 none 的 numpy 陣列 vals1:

vals1 = np.array([1, none, 3, 4])

vals1

array([1, none, 3, 4], dtype=object)

for dtype in ['object', 'int']:

print("dtype =", dtype)

%timeit np.arange(1e6, dtype=dtype).sum()

print()

dtype = object10 loops, best of 3: 78.2 ms per loopdtype = int100 loops, best of 3: 3.06 ms per loop

vals1.sum()
可以看到,當我們的陣列中存在缺失值 none 時,我們無法完成簡單的求和運算,並且會出現程式報錯。

運用 numpy 庫,我們可以用另一種方式生成缺失值,即使用 np.nan:

vals2 = np.array([1, np.nan, 3, 4]) 

vals2.dtype

dtype(『float64』)

1 + np.nan
nan

0 *  np.nan
nan

可以發現,np.nan 雖然也不能參與簡單的計算,但不會出現程式報錯的情況,我們得到的結果將為 nan。

同時,numpy 庫還專門為我們準備了用於處理 nan 值的特殊函式 nansum、nanmin 以及 nanmax 等:

vals2.sum(), vals2.min(), vals2.max()
(nan, nan, nan)

np.nansum(vals2), np.nanmin(vals2), np.nanmax(vals2)
(8.0, 1.0, 4.0)

在 pandas 序列中,不論我們生成的缺失值是 none 還是 nan,都會被轉化為 nan 的形式:

pd.series([1, np.nan, 2, none])
以上內容** 數析學院,原文內容較多,這裡只是一部分,感興趣的同學可以直接檢視原文

python處理資料中缺失值

1 直接刪除法 當缺失值個數只佔整體很小一部分時 在採用刪除法處理缺失值時,需要首先檢測樣本總體中確實值得的個數。python中統計缺失值的方法為 import numpy as np import pandas as pd 讀取資料,將空值形式的缺失值轉換為可識別的型別 data pd.read ...

Pandas中的缺失值處理

相信大家在處理資料的時候經常會發現有一些資料的缺失,這個時候便會很頭大,因為有時候的缺失的資料是本來就沒有的,這些資料不管就好了,有的資料雖然沒有,但是也可以根據一些資料推算出來這個資料是多少然後給它填上,但是有的資料缺失是隨機缺失的完全不知道應該怎麼處理,所以呢今天我就帶大家了解一下資料中的缺失值...

Pandas中的缺失值處理

相信大家在處理資料的時候經常會發現有一些資料的缺失,這個時候便會很頭大,因為有時候的缺失的資料是本來就沒有的,這些資料不管就好了,有的資料雖然沒有,但是也可以根據一些資料推算出來這個資料是多少然後給它填上,但是有的資料缺失是隨機缺失的完全不知道應該怎麼處理,所以呢今天我就帶大家了解一下資料中的缺失值...