Feature Engineering with PySpark
John Hogue
Lead Data Scientist, General Mills
Sběr dat
Pravidla ukládání dat
Spojování různorodých dat
Záměrně chybějící

Zcela náhodně chybějící
Náhodně chybějící
Nenáhodně chybějící
Kdy odstraňovat řádky s chybějícími daty?
isNull()
df.where(df['ROOF'].isNull()).count()
765
# Import library import seaborn as sns# subset the dataframe sub_df = df.select(['ROOMAREA1'])# sample the dataframe sample_df = sub_df.sample(False, .5, 4)# Convert to Pandas DataFrame pandas_df = sample_df.toPandas()# Plot it sns.heatmap(data=pandas_df.isnull())

Proces nahrazování chybějících hodnot
Na základě pravidel
Na základě statistik
Na základě modelu
** fillna(value, subset=None)
value hodnota nahrazující chybějící datasubset seznam názvů sloupců k nahrazení# Replacing missing values with zero
df.fillna(0, subset=['DAYSONMARKET'])
# Replacing with the mean value for that column
col_mean = df.agg({'DAYSONMARKET': 'mean'}).collect()[0][0]
df.fillna(col_mean, subset=['DAYSONMARKET'])
Feature Engineering with PySpark