news 2026/5/11 3:38:32

Python Victor-DAY 8 标签编码与连续变量处理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python Victor-DAY 8 标签编码与连续变量处理

知识点复盘:

  1. 字典的简单介绍(增删查改)
  2. 标签编码(字典的映射)
  3. 对独热编码的深入理解----n个不相关变量只有n-1个自由的
  4. 连续特征的处理:归一化和标准化----一般选一个即可,谁好谁坏做了才知道,除非有先验知识。

至此,常见的预处理方式都说完了

作业:对心脏病数据集的特征用上述知识完成,一次性用所有的处理方式完成预处理,包括

  1. 缺失值的处理
  2. 离散特征的编码
  3. 连续特征的归一化or标准化
  4. 数据可视化(单特征、单特征与标签)
import pandas as pd data = pd.read_csv(r'D:\课程\课程文件1\pythonstudy\pythonx训练营\python-60days-challenge\heart.csv') data.head()

输出

缺失值的处理

data.isnull()

输出

data.head()

输出

离散特征的编码

data.columns

输出

print(data.dtypes)

输出

for discrete_features in data.columns: if data[discrete_features].dtype == 'object': print(discrete_features)
data['age']

data['age'].value_counts()

整合

连续特征的归一化or标准化

数据可视化(单特征、单特征与标签)

# 手动实现归一化 def manual_normalize(data): min_val = data.min() max_val = data.max() normalized_data = (data - min_val) / (max_val - min_val) return normalized_data data['sex'] = manual_normalize(data['sex']) data['sex'].head()

输出

0 1.0 1 1.0 2 0.0 3 1.0 4 0.0 Name: sex, dtype: float64
# 使用sklearn进行归一化处理 from sklearn.preprocessing import StandardScaler, MinMaxScaler data = pd.read_csv(r'D:\课程\课程文件1\pythonstudy\pythonx训练营\python-60days-challenge\heart.csv') min_max_scaler = MinMaxScaler() data['sex'] = min_max_scaler.fit_transform(data[['sex']]) data['sex'].head

输出

<bound method NDFrame.head of 0 1.0 1 1.0 2 0.0 3 1.0 4 0.0 ... 298 0.0 299 1.0 300 1.0 301 1.0 302 0.0 Name: sex, Length: 303, dtype: float64>
# 使用sklearn进行标准化处理 data = pd.read_csv(r'D:\课程\课程文件1\pythonstudy\pythonx训练营\python-60days-challenge\heart.csv') scaler = StandardScaler() data['sex'] = scaler.fit_transform(data[['sex']]) data['sex'].head()

输出

0 0.681005 1 0.681005 2 -1.468418 3 0.681005 4 -1.468418 Name: sex, dtype: float64

数据可视化

单特征

单特征与标签的关系

plt.figure(figsize=(12, 6)) sns.violinplot(x='age', y='chol', data=data, scale='width', inner='quartile')#把年龄(age)当横轴分组,胆固醇(chol)当纵轴连续量,画“小提琴”——左右鼓包表示每个年龄组里 chol 的分布形状,宽度代表样本量。 plt.title('Cholesterol vs. age') plt.xlabel('Age (years)') plt.ylabel('Cholesterol (mg/dL)') plt.tight_layout() plt.show()

输出

import seaborn as sns import matplotlib.pyplot as plt plt.figure(figsize=(8, 5)) # 1. 只画 KDE 轮廓,填不填都可以 sns.kdeplot(data=data, x='chol', hue='target', fill=True, # 填色更直观 bw_adjust=0.7, # 平滑度 common_norm=False,# 各自积分=1,方便比较形状 palette='Set2') # 2. 细节美化 plt.title('Cholesterol distribution by Heart Disease') plt.xlabel('Cholesterol (mg/dL)') plt.ylabel('Density') plt.legend(title='Heart Disease', labels=['No', 'Yes']) plt.tight_layout() plt.show()

输出

@浙大疏锦行

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/7 5:01:47

Open-AutoGLM应用十大场景(90%的企业还不知道的自动化红利)

第一章&#xff1a;Open-AutoGLM 跨境贸易自动化在跨境贸易场景中&#xff0c;信息异构、流程复杂和多语言沟通障碍长期制约着效率提升。Open-AutoGLM 作为一款基于开源大语言模型的自动化框架&#xff0c;专为解决此类问题而设计&#xff0c;能够实现订单处理、报关文档生成、…

作者头像 李华
网站建设 2026/5/3 11:50:16

网络安全入门知识地图:快速构建你的第一层防御体系(新手不绕路)

当我们学习网络安全的时候&#xff0c;需要对它的基础知识做一个简单的了解&#xff0c;这样对以后的学习和工作都会有很大的帮助。本篇文章为大家总结了网络安全基础知识入门的内容&#xff0c;快跟着小编来学习吧。 计算机网络 计算机网络是利用通信线路将不同地理位置、具…

作者头像 李华
网站建设 2026/5/10 5:38:13

零经验想跳槽转行网络安全,需要准备什么?(详细版)

前言 最近在后台收到了部分私信&#xff0c;大部分都是关于网络安全转行的问题&#xff0c;其中&#xff0c;目前咨询最多的是&#xff1a;觉得现在的工作没有发展空间&#xff0c;替代性强&#xff0c;工资低&#xff0c;想跳槽转行网络安全。其中&#xff0c;大家主要关心的…

作者头像 李华
网站建设 2026/5/5 8:29:57

Open-AutoGLM数字人协同落地难题:3个月实现医院场景规模化部署的秘密

第一章&#xff1a;Open-AutoGLM医疗数字人协同的演进与定位随着人工智能在医疗健康领域的深度渗透&#xff0c;Open-AutoGLM作为新一代开源多模态大模型框架&#xff0c;正推动医疗数字人从单向问答向智能协同诊疗演进。该系统融合自然语言理解、医学知识图谱与临床决策支持能…

作者头像 李华
网站建设 2026/5/1 8:44:16

AI内容生成革命来了,你还在手动写文案?

第一章&#xff1a;AI内容生成革命来了&#xff0c;你还在手动写文案&#xff1f; 人工智能正以前所未有的速度重塑内容创作的生态。从社交媒体文案到技术文档撰写&#xff0c;AI驱动的内容生成工具已经能够以极高的效率输出高质量文本&#xff0c;彻底颠覆传统“逐字敲打”的工…

作者头像 李华