python:用 sklearn 转换器处理数据

pip install scikit-learn 或者 直接用 Anaconda3

sklearn 提供了 model_selection 模型选择模块、preprocessing 数据预处理模块、decompisition 特征分解模块。

编写 test_sklearn_2.py 如下

python 复制代码
# -*- coding: utf-8 -*-
""" 乳腺癌数据集 """
import numpy as np
from sklearn import datasets

# 1.加载 datasets 中的数据集
cancer = datasets.load_breast_cancer()
print(len(cancer))
print(type(cancer))
# 数据集的数据
data = cancer['data']
print('breast_cancer_data:','\n', data)
# 数据集的标签
target = cancer['target']
print('breast_cancer_target:','\n', target)
# 数据集的特征名称
feature_names = cancer['feature_names']
print('breast_cancer_feature_names:','\n', feature_names)
# 数据集的描述信息
Descr = cancer['DESCR']
print('breast_cancer_DESCR:','\n', Descr)
print('-----------------------')

# 2.将数据集划分为训练集和测试集
# 原始数据集数据的形状
print('cancer_data_shape:', data.shape)
print('cancer_target_shape:', target.shape)
# 使用 train_test_split 划分数据集
from sklearn import model_selection
data_train,data_test,target_train,target_test = \
    model_selection.train_test_split(data,target, test_size=0.2, random_state=42)
print('-----------------------')
print('cancer_data_train_shape:', data_train.shape)
print('cancer_target_train_shape:', target_train.shape)
print('cancer_data_test_shape:', data_test.shape)
print('cancer_target_test_shape:', target_test.shape)

# 3.使用 sklearn 转换器进行数据预处理
from sklearn import preprocessing
# 离差标准化:生成规则
Scaler = preprocessing.MinMaxScaler().fit(data_train)
# 将规则应用于训练集
train_Scaler = Scaler.transform(data_train)
# 将规则应用于测试集
test_Scaler = Scaler.transform(data_test)
print('-----------------------')
print('data_train_min:', np.min(data_train))
print('train_Scaler_min:', np.min(train_Scaler))
print('data_train_max:', np.max(data_train))
print('train_Scaler_max:', np.max(train_Scaler))
print('data_test_min:', np.min(data_test))
print('test_Scaler_min:', np.min(test_Scaler))
print('data_test_max:', np.max(data_test))
print('test_Scaler_max:', np.max(test_Scaler))

# 对 breast_cancer 数据集 PCA 降维
from sklearn.decomposition import PCA
# PCA 降维:生成规则
pca_model = PCA(n_components=10).fit(train_Scaler)
# 将规则应用于训练集
train_pca = pca_model.transform(train_Scaler)
# 将规则应用于测试集
test_pca = pca_model.transform(test_Scaler)
print('-----------------------')
print('train_Scaler_shape:', train_Scaler.shape)
print('train_pca_shape:', train_pca.shape)
print('test_Scaler_shape:', test_Scaler.shape)
print('test_pca_shape:', test_pca.shape)

运行 python test_sklearn_2.py

参考书:【Python 数据分析与应用】第6章 使用 scikit-learn 构建模型

相关推荐
HyperAI超神经3 分钟前
覆盖天体物理/地球科学/流变学/声学等19种场景,Polymathic AI构建1.3B模型实现精确连续介质仿真
人工智能·深度学习·学习·算法·机器学习·ai编程·vllm
沐泽__17 分钟前
Flask简介
后端·python·flask
王锋(oxwangfeng)21 分钟前
基于 DINO 与 Chinese-CLIP 的自动驾驶语义检索系统架构
人工智能·机器学习·自动驾驶
码界奇点21 分钟前
基于Django的超市管理系统设计与实现
数据库·python·django·sqlite·毕业设计·源代码管理
AI职业加油站30 分钟前
Python技术应用工程师:互联网行业技能赋能者
大数据·开发语言·人工智能·python·数据分析
I'mChloe31 分钟前
机器学习核心分支:深入解析非监督学习
人工智能·学习·机器学习
爱吃泡芙的小白白38 分钟前
机器学习中的“隐形之手”:偏置项深入探讨与资源全导航
人工智能·机器学习
爱打代码的小林44 分钟前
用 PyTorch 实现 CBOW 模型
人工智能·pytorch·python
Coding茶水间1 小时前
基于深度学习的花朵识别系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
开发语言·人工智能·深度学习·yolo·目标检测·机器学习
123_不打狼1 小时前
AE(自编码器)与 VAE(变分自编码器)核心区别:原理、目标与应用
深度学习·算法·机器学习·vae