python day8
·
from sklearn.preprocessing import MinMaxScaler # 归一化
from sklearn.preprocessing import StandardScaler # 标准化
# 假设已有数据集 data(包含 .age 特征,先重命名为 age 方便使用)
data.rename(columns={'.age': 'age'}, inplace=True) # 去掉列名前的点(关键)
# 提取连续特征(仅 age,可扩展其他连续特征如 income 等)
X = data[['age']] # 注意:sklearn 要求输入为 2D 数组,用 [[]] 而非 []
# 1. 归一化(Min-Max Scaling,映射到 [0,1])
min_max_scaler = MinMaxScaler()
X_age_normalized = min_max_scaler.fit_transform(X)
data['age_归一化'] = X_age_normalized # 结果存入原数据框
# 2. 标准化(Z-Score Scaling,均值=0,方差=1)
std_scaler = StandardScaler()
X_age_standardized = std_scaler.fit_transform(X)
data['age_标准化'] = X_age_standardized # 结果存入原数据框
# 打印原始值、归一化后、标准化后的数据(前5行)
print("原始age | 归一化后 | 标准化后")
print("-" * 30)
print(data[['age', 'age_归一化', 'age_标准化']].head())
注:其他步骤day7已经写了。此数据集中没有离散变量,也没有缺失值。
结果:

更多推荐
所有评论(0)