جایگزینی مقادیر گمشده در Pandas
در تجزیه و تحلیل داده، مقادیر گمشده می توانند چالش برانگیز باشند و بر دقت و اعتبار نتایج شما تأثیر بگذارند. Pandas به عنوان ابزاری قدرتمند برای دستکاری و تجزیه و تحلیل داده ها، روش های مختلفی برای جایگزینی مقادیر گمشده با مقادیر مناسب ارائه می دهد.
۱. روش های جایگزینی:
- استفاده از
fillna()
: این تابع Series یا DataFrame را با مقادیر دلخواه جایگزین مقادیر گمشده می کند.
Python
import pandas as pd
data = pd.DataFrame({"A": [۱, ۲, np.nan], "B": [۴, ۵, None]})
# جایگزینی مقادیر گمشده با ۰
data.fillna(۰, inplace=True)
# جایگزینی مقادیر گمشده با میانگین ستون
data.fillna(data.mean(), inplace=True)
# جایگزینی مقادیر گمشده با مقادیر خاص بر اساس ستون
data["A"].fillna(data["B"], inplace=True)
- استفاده از
replace()
: این تابع مقادیر خاص را در Series یا DataFrame با مقادیر دیگر جایگزین می کند، چه گمشده باشند چه نباشند.
Python
# جایگزینی NaN با ۰
data.replace(np.nan, ۰, inplace=True)
# جایگزینی مقادیر خاص در ستون "A" با "Missing"
data["A"].replace(۱۰, "Missing", inplace=True)
- استفاده از
interpolate()
: این تابع مقادیر گمشده را با برآورد مقادیر بین نقاط داده مجاور، به طور خودکار جایگزین می کند.
Python
# جایگزینی مقادیر گمشده با روش خطی
data.interpolate("linear", inplace=True)
# جایگزینی مقادیر گمشده با روش جذر مربعی
data.interpolate("quadratic", inplace=True)
۲. جایگزینی بر اساس شرایط:
- می توانید از عبارات شرطی مانند
if
وelse
برای جایگزینی مقادیر گمشده با مقادیر مختلف در شرایط مختلف استفاده کنید.
Python
def replace_values(df):
# جایگزینی مقادیر گمشده در "A" با میانگین ستون اگر "B" غیر گمشده باشد، در غیر این صورت با ۰
df["A"].fillna(df["A"].mean() if df["B"].notna() else ۰, inplace=True)
# جایگزینی مقادیر گمشده در "B" با "Unknown"
df["B"].fillna("Unknown", inplace=True)
data = pd.DataFrame({"A": [۱, ۲, np.nan], "B": [۴, ۵, None]})
replace_values(data.copy())
- می توانید از توابع سفارشی برای جایگزینی مقادیر گمشده با منطق پیچیده تر استفاده کنید.
Python
import numpy as np
def replace_with_custom_logic(value):
if value is np.nan:
if np.random.rand() < ۰.۵:
return ۰
else:
return ۱۰
else:
return value
data["A"].fillna(lambda x: replace_with_custom_logic(x), inplace=True)
۳. نکات:
- قبل از جایگزینی مقادیر گمشده، الگوهای گمشده و تأثیر آنها بر تجزیه و تحلیل خود را درک کنید.
- از روش مناسب جایگزینی بر اساس نوع داده ها، توزیع داده ها و هدف تجزیه و تحلیل خود استفاده کنید.
- برای بررسی صحت و تأثیر جایگزینی مقادیر گمشده، داده های خود را به دقت بررسی کنید.
با تسلط بر روش های جایگزینی مقادیر گمشده در Pandas، می توانید به طور موثر داده های خود را برای تحلیل های دقیق و قابل اعتماد آماده کنید.