Python: 如何使用pandas.to_numeric ( df[‘numbers’], errors=’coerce’) 將非數值型資料轉為NaN? df[‘numbers’].describe() 簡述統計資料

加入好友
加入社群
Python: 如何使用pandas.to_numeric ( df['numbers'], errors='coerce') 將非數值型資料轉為NaN? df['numbers'].describe() 簡述統計資料 - 儲蓄保險王

在Python中,特別是在使用pandas進行數據處理時,errors=’coerce‘ (kōˈərs 脅迫,強制轉換)是一個非常有用的參數。它通常用於數據類型轉換函數,如 pandas.to_datetime() 或 pandas.to_numeric()。這個參數的作用是在數據轉換過程中處理錯誤或不能識別的值。

具體作用:
當你嘗試將一列數據轉換為特定類型(如數值或日期時間)時,如果遇到無法轉換的值,通常會引發錯誤。使用 errors=’coerce’ 參數可以避免這樣的錯誤,不可轉換的值將被設置為 NaN(即“非數字”,是pandas中表示缺失值或無效值的標準)。

使用場景舉例:
轉換數值類型:

import pandas as pd

# 假设有一个包含数字和非数字字符串的数据列
data = ['1', '2', 'three', '4', 'five']
df = pd.DataFrame(data, columns=['numbers'])

# 尝试将这列转换为数值类型使用 errors='coerce'
df['numbers'] = pd.to_numeric(df['numbers'], errors='coerce')
print(df)

輸出結果:

Python: 如何使用pandas.to_numeric ( df['numbers'], errors='coerce') 將非數值型資料轉為NaN? df['numbers'].describe() 簡述統計資料 - 儲蓄保險王

在這個例子中,非數字的字符串 “three” 和 “five” 被轉換為了 NaN。

轉換日期時間類型:

# 假设有一个包含正确和错误日期格式的数据列
dates = ['2023-01-01', '2023-02-30', '2023-03-15', 'wrong-date']
df_dates = pd.DataFrame(dates, columns=['dates'])

# 尝试将这列转换为日期类型使用 errors='coerce'
df_dates['dates'] = pd.to_datetime(df_dates['dates'], errors='coerce')
print(df_dates)

輸出結果:

Python: 如何使用pandas.to_numeric ( df['numbers'], errors='coerce') 將非數值型資料轉為NaN? df['numbers'].describe() 簡述統計資料 - 儲蓄保險王

在這個例子中,錯誤的日期和字符串被轉換為 NaT(即“非時間”,pandas中表示日期時間型缺失值的標準)。

總結:
使用 errors=’coerce’ 參數可以在數據清洗和預處理中非常有效地處理包含錯誤或異常值的數據列,它能夠保證數據轉換過程的順利進行,而不會因為個別數據的格式問題而中斷整個數據處理流程。這是數據科學和數據分析中常見的一種實用技巧。

推薦hahow線上學習python: https://igrape.net/30afN

加入好友
加入社群
Python: 如何使用pandas.to_numeric ( df['numbers'], errors='coerce') 將非數值型資料轉為NaN? df['numbers'].describe() 簡述統計資料 - 儲蓄保險王

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡

You may also like...

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *