开始使用免费开始使用

处理离群值

在上一个练习中,您学习了在机器学习面试中,如何通过可视化离群值来发挥作用。另一个常用的方法是计算 Z 分数(Z-score),它为离群值提供阈值:大约为均值正负 3 个标准差。

在本练习中,您将使用 scipy.stats 模块,通过 stats.zscore() 函数计算 Z 分数,并使用 mstats.winsorize() 函数采用 Winsorizing 技术来替换离群值。

回顾视频课程内容:高于和/或低于 1.5 倍 IQR 的点应视为潜在离群值。本练习最后一步中,该阈值为 2120。

相关包已为您导入,同时已将 loan_data 的数值型与分类型列分别提取并保存为 numeric_colscategoric_cols

Machine learning pipeline

本练习是课程的一部分

用 Python 练习机器学习面试题

查看课程

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Print: before dropping
print(numeric_cols.mean())
print(numeric_cols.median())
print(numeric_cols.max())

# Create index of rows to keep
idx = (np.____(stats.____(____)) < 3).all(axis=1)

# Concatenate numeric and categoric subsets
ld_out_drop = pd.concat([numeric_cols.loc[____], categoric_cols.loc[____]], axis=1)

# Print: after dropping
print(ld_out_drop.mean())
print(ld_out_drop.median())
print(ld_out_drop.max())
编辑并运行代码