การเติมค่าด้วย Mean, Median และ Mode

การจัดการข้อมูลที่หายไปใน Python

Suraj Donthi

Deep Learning & Computer Vision Consultant

เทคนิคการเติมค่าพื้นฐาน

  • ค่าคงที่ (เช่น 0)
  • mean
  • median
  • mode หรือค่าที่พบบ่อยที่สุด
การจัดการข้อมูลที่หายไปใน Python

การเติมค่าด้วย Mean

from sklearn.impute import SimpleImputer

diabetes_mean = diabetes.copy(deep=True)
mean_imputer = SimpleImputer(strategy='mean')
การจัดการข้อมูลที่หายไปใน Python

การเติมค่าด้วย Mean

from sklearn.impute import SimpleImputer
diabetes_mean = diabetes.copy(deep=True)
mean_imputer = SimpleImputer(strategy='mean')
diabetes_mean.iloc[:, :] = mean_imputer.fit_transform(diabetes_mean)
การจัดการข้อมูลที่หายไปใน Python

การเติมค่าด้วย Median

diabetes_median = diabetes.copy(deep=True)
median_imputer = SimpleImputer(strategy='median')
diabetes_median.iloc[:, :] = median_imputer.fit_transform(diabetes_median)
การจัดการข้อมูลที่หายไปใน Python

การเติมค่าด้วย Mode

diabetes_mode = diabetes.copy(deep=True)
mode_imputer = SimpleImputer(strategy='most_frequent')
diabetes_mode.iloc[:, :] = mode_imputer.fit_transform(diabetes_mode)
การจัดการข้อมูลที่หายไปใน Python

การเติมค่าคงที่

diabetes_constant = diabetes.copy(deep=True)
constant_imputer = SimpleImputer(strategy='constant', fill_value=0))
diabetes_constant.iloc[:, :] = constant_imputer.fit_transform(diabetes_constant)
การจัดการข้อมูลที่หายไปใน Python

Scatterplot ของการเติมค่า

nullity = diabetes['Serum_Insulin'].isnull()+diabetes['Glucose'].isnull()
diabetes_mean.plot(x='Serum_Insulin', y='Glucose', kind='scatter', alpha=0.5,

c=nullity, cmap='rainbow', title='Mean Imputation')

Scatterplot ของ diabetes dataframe ที่เติมค่าด้วย mean

การจัดการข้อมูลที่หายไปใน Python

แสดงผลการเติมค่า

fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(10, 10))

nullity = diabetes['Serum_Insulin'].isnull()+diabetes['Glucose'].isnull()
imputations = {'Mean Imputation': diabetes_mean, 'Median Imputation': diabetes_median, 'Most Frequent Imputation': diabetes_mode, 'Constant Imputation': diabetes_constant}
for ax, df_key in zip(axes.flatten(), imputations):
imputations[df_key].plot(x='Serum_Insulin', y='Glucose', kind='scatter', alpha=0.5, c=nullity, cmap='rainbow', ax=ax, colorbar=False, title=df_key)
การจัดการข้อมูลที่หายไปใน Python

การแสดงผลการเติมค่าของ diabetes dataframe

การจัดการข้อมูลที่หายไปใน Python

สรุป

สิ่งที่ได้เรียนรู้

  • การเติมค่าด้วยค่าสถิติ เช่น mean, median และ mode
  • การเปรียบเทียบการเติมค่าด้วยกราฟ
  • การวิเคราะห์ผลการเติมค่า
การจัดการข้อมูลที่หายไปใน Python

มาฝึกกันเถอะ!

การจัดการข้อมูลที่หายไปใน Python

Preparing Video For Download...