Day51:数据预处理和特征工程
上一节我们讲了降维的四种基本算法,其实降维就是对数据进行处理。在机器学习中,数据预处理和特征工程是非常重要的步骤,它们对于模型的性能和准确性有着重要的影响。本节将介绍常见的数据预处理方式和特征工程技术。
数据预处理
数据预处理是指在应用机器学习算法之前对数据进行清洗、转换和规范化的过程。以下是几种常见的数据预处理方式:
- 数据清洗:
- 去除重复值:使用
pandas
库的drop_duplicates()
函数去除数据集中的重复值。 - 处理缺失值:使用
pandas
库的fillna()
函数填充缺失值,可以使用均值、中位数或其他合适的值进行填充。 - 处理异常值:可以使用统计方法或可视化工具检测和处理异常值。
- 去除重复值:使用
- 数据转换:
- 特征编码:将非数值型特征转换为数值型特征,例如使用
pandas
库的get_dummies()
函数进行独热编码。 - 特征缩放:将不同范围的特征缩放到相同的尺度,例如使用
sklearn
库的MinMaxScaler
或StandardScaler
进行特征缩放。
- 特征编码:将非数值型特征转换为数值型特征,例如使用
- 数据规范化:
- 归一化:将特征值缩放到0和1之间,例如使用
sklearn
库的MinMaxScaler
进行归一化。 - 标准化:将特征值转换为均值为0、方差为1的标准正态分布,例如使用
sklearn
库的StandardScaler
进行标准化。
- 归一化:将特征值缩放到0和1之间,例如使用
以下是一个数据预处理的示例:
from sklearn.datasets import load_iris
from sklearn.preprocessing import StandardScaler
import pandas as pd
# 加载iris数据集
data = load_iris()
X = data.data
y = data.target
# 将特征转换为DataFrame
df = pd.DataFrame(X, columns=data.feature_names)
df["target"] = y
# 数据预处理
scaler = StandardScaler()
scaled_features = scaler.fit_transform(X)
# 将处理后的特征转换为DataFrame
df_scaled = pd.DataFrame(scaled_features, columns=data.feature_names)
df_scaled["target"] = y
# 打
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
大模型-AI小册 文章被收录于专栏
1. AI爱好者,爱搞事的 2. 想要掌握第二门语言的Javaer或者golanger 3. 决定考计算机领域研究生,给实验室搬砖的uu,强烈建议你花时间学完这个,后续搬砖比较猛 4. 任何对编程感兴趣的,且愿意掌握一门技能的人