当前位置: 首页 > news >正文

2025-11-14 学习记录--Python-特征归一化方法(Min-Max或StandardScaler)

一、特征归一化方法(Min-MaxStandardScaler) ⭐️

(一)、Min-Max 归一化(0-1 标准化)🍭

在这里插入图片描述

将特征缩放到 0~1 区间。

1、公式 📚

x′=x−xmin⁡xmax⁡−xmin⁡ x' = \frac{x - x_{\min}}{x_{\max} - x_{\min}} x=xmaxxminxxmin

2、举例 🐰
from sklearn.preprocessing import MinMaxScaler   # 从 sklearn 导入 Min-Max 归一化工具
import pandas as pd                              # 导入 pandas 库用于数据处理# 创建示例数据,包含两列 A 和 B
df = pd.DataFrame({"A": [10, 20, 30, 40],                       # A 列 4 个数值"B": [100, 150, 200, 350]                    # B 列 4 个数值
})# 初始化 Min-Max 缩放器,默认将数据缩放到 0~1 范围
scaler = MinMaxScaler()# 使用缩放器对数据进行归一化(fit:计算 min/max,transform:执行映射)
scaled_data = scaler.fit_transform(df)# 将结果转换回 DataFrame,并保留原来的列名
df_scaled = pd.DataFrame(scaled_data, columns=df.columns)# 打印归一化后的 DataFrame
print(df_scaled)

在这里插入图片描述

(二)、StandardScalerZ-score 标准化)🍭

在这里插入图片描述

将数据变成 均值=0、标准差=1 的分布。

1、公式 📚

x′=x−μσ x' = \frac{x - \mu}{\sigma} x=σxμ

2、举例 🐰
from sklearn.preprocessing import StandardScaler   # 从 sklearn 导入 Z-score 标准化工具
import pandas as pd                                # 导入 pandas 库,用于表格数据处理# 创建一个示例 DataFrame,包含两列 A 和 B 的数值
df = pd.DataFrame({"A": [10, 20, 30, 40],                         # A 列 4 个数值"B": [100, 150, 200, 350]                      # B 列 4 个数值
})# 初始化 StandardScaler(Z-score 标准化器)
# 该标准化方法会将数据转换为:
#   均值 μ = 0
#   标准差 σ = 1
scaler = StandardScaler()# 使用标准化器对数据执行 Z-score 标准化
# fit:计算均值 μ 和标准差 σ
# transform:执行 (x - μ) / σ 转换
scaled_data = scaler.fit_transform(df)# 将返回的 numpy 数组转换回 DataFrame,并保留列名
df_scaled = pd.DataFrame(scaled_data, columns=df.columns)# 打印标准化后的结果
print(df_scaled)

在这里插入图片描述

(三)、总结对比 🍭

方法优点缺点使用场景
Min-Max数值范围固定在 0-1,直观容易受极值影响神经网络、深度学习 最常用
StandardScaler不怕极值,稳定没有固定范围传统机器学习(SVM、KNN、线性模型)

二、对 CSV 文件中的数据执行归一化 ⭐️

import pandas as pd                                              # 导入 pandas,用于读取 CSV 和处理表格数据
from sklearn.preprocessing import MinMaxScaler, StandardScaler   # 导入两种常用归一化方法(此处只用 MinMaxScaler)# 读取当前目录下的 data.csv 文件,并加载为 DataFrame
df = pd.read_csv("data.csv")# 指定需要进行归一化的列名
# 例如:age(年龄)、height(身高)、weight(体重)
# 这里的列名必须是 CSV 文件中真实存在的列
features = ["age", "height", "weight"] # features = list(df.columns) 表示df中的所有列名的列表(list 格式)# 创建一个 Min-Max 归一化器,将数据缩放到 0~1 区间
scaler = MinMaxScaler()# 对指定的特征列执行 Min-Max 归一化
# fit_transform:先计算每列的最小值与最大值(fit),再进行缩放(transform)
df[features] = scaler.fit_transform(df[features])# 打印归一化后的前 5 行,确认结果
print(df.head())

在这里插入图片描述

http://www.dtcms.com/a/610132.html

相关文章:

  • 一款基于鲁班猫和STM32的自主导航实践
  • Cognex VisionPro 相机工具集成代码分析笔记
  • 五大3D软件深度横评:Maya、3DMax、Cinema 4D、Houdini与Blender
  • 网站可以不备案有口碑的武进网站建设
  • 重庆建网站 私单建设银行人力资源系统网站怎么进
  • 基于ADP自适应动态规划算法的控制系统matlab性能仿真,采用RNN进行控制对象参数辨识
  • 宝塔面板建站教程中国建设银行北京天竺支行网站
  • 本地建站教程企业邮箱邮箱
  • 开源的力量:如何用开源技术构建高效IT架构?
  • 如何降低程序的时间复杂度,提高运行时效?
  • openEuler系统下sudo权限配置与使用指南
  • 一个网站好不好做网站赔钱了
  • 受欢迎的丹阳网站建设有哪些调查网站可以做兼职
  • 品牌型网站成功案例图片网站建设的流程分析
  • 手机网站用什么域名潍坊网站建设 世纪环球16楼
  • 17、grafana安装
  • 2025年蚌埠市“三首产品”、市级服务型制造示范、市级企业技术中心等5个项目认定申报指南大全
  • 做一个个人主页的网站怎么做房地产销售段子
  • 个人网站定制国内免费的短视频素材网站
  • 1999-2023年 微观企业劳动生产率数据
  • 二手书店网站建设规划书网站域名 过期
  • 选择Rust的理由:从内存管理到抛弃抽象
  • JUC包里的同步组件主要实现了AQS的哪些主要方法
  • wordpress公司展示网站模板网站推广需要多少钱易下拉系统
  • wordpress站点费用网站底部的图标
  • 引力本体的几何之歌:从星体永恒吸引到人工场操控时空的范式革命
  • Docker-Android容器化开发:如何通过Cpolar实现远程环境无缝协作
  • ## 2.2 状态同步
  • 翻译技巧英语
  • 11.14 脚本网页 迷宫逃离