ฟีเจอร์ที่มีค่าสูญหายหรือความแปรปรวนต่ำ

การลดมิติข้อมูลใน Python

Jeroen Boeye

Head of Machine Learning, Faktion

สร้าง feature selector

print(ansur_df.shape)
(6068, 94)
from sklearn.feature_selection import VarianceThreshold

sel = VarianceThreshold(threshold=1)

sel.fit(ansur_df) mask = sel.get_support() print(mask)
array([ True,  True, ..., False,  True])
การลดมิติข้อมูลใน Python

ใช้งาน feature selector

print(ansur_df.shape)
(6068, 94)
reduced_df = ansur_df.loc[:, mask]
print(reduced_df.shape)
(6068, 93)
การลดมิติข้อมูลใน Python

ข้อควรระวังของ variance selector

buttock_df.boxplot()

boxplot ของฟีเจอร์

การลดมิติข้อมูลใน Python

ปรับค่า variance ให้เป็นมาตรฐาน

from sklearn.feature_selection import VarianceThreshold

sel = VarianceThreshold(threshold=0.005)

sel.fit(ansur_df / ansur_df.mean())

mask = sel.get_support() reduced_df = ansur_df.loc[:, mask] print(reduced_df.shape)
(6068, 45)
การลดมิติข้อมูลใน Python

selector สำหรับค่าสูญหาย

ตัวอย่างข้อมูล pokemon

การลดมิติข้อมูลใน Python

selector สำหรับค่าสูญหาย

ตัวอย่างข้อมูล pokemon ที่มีค่า nan

การลดมิติข้อมูลใน Python

ตรวจสอบค่าสูญหาย

pokemon_df.isna()

ตัวอย่างข้อมูล pokemon ที่มีค่า nan แบบ boolean

การลดมิติข้อมูลใน Python

นับจำนวนค่าสูญหาย

pokemon_df.isna().sum()
Name         0
Type 1       0
Type 2     386
Total        0
HP           0
Attack       0
Defense      0
dtype: int64
การลดมิติข้อมูลใน Python

นับจำนวนค่าสูญหาย

pokemon_df.isna().sum() / len(pokemon_df)
Name       0.00
Type 1     0.00
Type 2     0.48
Total      0.00
HP         0.00
Attack     0.00
Defense    0.00
dtype: float64
การลดมิติข้อมูลใน Python

กำหนดเกณฑ์ค่าสูญหาย

# Fewer than 30% missing values = True value
mask = pokemon_df.isna().sum() / len(pokemon_df) < 0.3
print(mask)
Name        True
Type 1      True
Type 2     False
Total       True
HP          True
Attack      True
Defense     True
dtype: bool
การลดมิติข้อมูลใน Python

กำหนดเกณฑ์ค่าสูญหาย

reduced_df = pokemon_df.loc[:, mask]

reduced_df.head()

ตัวอย่างข้อมูล pokemon หลังใช้ mask

การลดมิติข้อมูลใน Python

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

การลดมิติข้อมูลใน Python

Preparing Video For Download...