在 Pandas 中用 NaN 取代空白值(空白)
資料清理是資料分析中至關重要的一步。一項常見任務是將空白值(空白)替換為 NaN。使用 Pandas 可以有效地完成此操作。
要實現此目的,請利用 df.replace() 函數。此函數允許對 DataFrame 值進行基於正規表示式的搜尋和取代操作。實作方法如下:
import numpy as np
import pandas as pd
df = pd.DataFrame([
[-0.532681, 'foo', 0],
[1.490752, 'bar', 1],
[-1.387326, 'foo', 2],
[0.814772, 'baz', ' '],
[-0.222552, ' ', 4],
[-1.176781, 'qux', ' '],
], columns='A B C'.split(), index=pd.date_range('2000-01-01','2000-01-06'))
# Replace fields that contain only whitespace (or are empty) with NaN
print(df.replace(r'^\s*$', np.nan, regex=True))
# Output:
# A B C
# 2000-01-01 -0.532681 foo 0
# 2000-01-02 1.490752 bar 1
# 2000-01-03 -1.387326 foo 2
# 2000-01-04 0.814772 baz NaN
# 2000-01-05 -0.222552 NaN 4
# 2000-01-06 -1.176781 qux NaN
請注意,此程式碼替換僅包含空格或為空的欄位(即符合正規表示式r'^\s*$'**) 。如果您的有效資料包含空格,請相應地調整正規表示式(例如,從 r'^\s ' 的末尾刪除 **$)。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3