#26编程题
应用场景 :你收到一份关于二手房成交的数据 house_df,包含三列:price(单价)、area(面
积)、status(装修状态:'简装', '精装')。请补全代码,完成以下预处理任务:
1. 检测并删除 price 列中的缺失值。
2. 使用 $3\sigma$ 原则剔除 price 列的异常值。
3. 将 status 列转换为哑变量矩阵,并与原数据拼接。
import pandas as pd
import numpy as np
# 假设 house_df 已经加载
# 1. 删除 price 中的缺失值
house_df.________(subset=[ 'price' ], inplace= True )
# 2. 定义 3-sigma 过滤逻辑
def filter_sigma(df, col):
mean_val = df[col].________()
std_val = df[col].________()
# 逻辑:保留在 (mean-3*std, mean+3*std) 范围内的行
rule = (df[col] > mean_val - 3 * std_val) & (df[col] < mean_val + 3 * std_val)
return df[rule]
house_clean = filter_sigma(house_df, 'price' )
# 3. 哑变量处理
status_dummies = pd.________(house_clean[ 'status' ], prefix= '装修' )
# 拼接回原表
final_df = pd.________([house_clean, status_dummies], axis= 1 )