fillna()
函數(shù)在 Python 數(shù)據(jù)分析中主要用于處理缺失值(NaN 或 None)
fillna()
函數(shù)將這些缺失值替換為特定的值或者基于其他值計(jì)算出的值。例如,可以用0、平均值、眾數(shù)或中位數(shù)等填充缺失值。import pandas as pd
# 創(chuàng)建一個(gè)包含缺失值的 DataFrame
data = {'A': [1, 2, None, 4], 'B': [None, 6, 7, 8]}
df = pd.DataFrame(data)
# 使用 fillna() 函數(shù)填充缺失值
filled_df = df.fillna(0) # 將缺失值替換為 0
fillna()
函數(shù)填充缺失值,方法是使用前一個(gè)有效值(前向填充)或后一個(gè)有效值(后向填充)。import pandas as pd
# 創(chuàng)建一個(gè)包含缺失值的時(shí)間序列數(shù)據(jù)
data = {'date': pd.date_range('2021-01-01', periods=5), 'value': [1, 2, None, 4, None]}
ts = pd.DataFrame(data).set_index('date')
# 使用 fillna() 函數(shù)進(jìn)行前向填充和后向填充
ffilled_ts = ts.fillna(method='ffill') # 前向填充
bfilled_ts = ts.fillna(method='bfill') # 后向填充
fillna()
函數(shù)結(jié)合條件邏輯來填充缺失值。例如,可以根據(jù)某列的值來決定使用哪個(gè)值填充缺失值。import pandas as pd
# 創(chuàng)建一個(gè)包含缺失值的 DataFrame
data = {'A': [1, 2, None, 4], 'B': [None, 6, 7, 8], 'C': [10, 20, 30, 40]}
df = pd.DataFrame(data)
# 使用 fillna() 函數(shù)根據(jù)條件填充缺失值
filled_df = df.fillna(df['C'] / 10) # 將缺失值替換為 C 列對(duì)應(yīng)值除以 10
總之,fillna()
函數(shù)在 Python 數(shù)據(jù)分析中具有廣泛的應(yīng)用場景,可以幫助處理缺失值,從而提高數(shù)據(jù)質(zhì)量和分析效果。