数据挖掘(三)特征构造

前言

基于国防科技大学 丁兆云老师的《数据挖掘》课程
数据挖掘
数据挖掘(一)数据类型与统计
数据挖掘(二)数据预处理

3、特征构造
3.1 基本特征构造方法:

3.1.1 运用已有知识直接构造:

一般是根据原有特征挖掘新的更有用的特征,比如给出了质量和体积,则可以构造出密度特征

3.1.2 其它常见技巧:

常见构造特征技巧及运用场景:

3.1.3 时间类型数据特征构造:

时间特征(Time-Based Features):

如果数据中包含时间信息,可以从中提取各种时间特征,如年、月、日、季节、工作日、周末等。这些时间特征可以帮助模型捕捉到时间的周期性和趋势性,对于时间序列数据或具有时间相关性的数据集特别有用。

例:

3.2 离散数据进行哑编码:

哑编码(Dummy Encoding)和独热编码(One-Hot Encoding)是常用的特征编码方法,用于将分类变量转换为数值表示。它们在不同的情况下有不同的适用性,选择哪种编码方法取决于数据的特点和机器学习算法的需求。

  1. 哑编码(Dummy Encoding):
    哑编码是一种将分类变量转换为二进制(0和1)表示的编码方法。对于具有k个类别的分类变量,哑编码会创建k-1个二进制特征(或称为哑变量),并用0和1表示类别的存在与否。其中,k-1个特征中的每一个对应于一个类别,而最后一个类别作为参考类别,不需要单独编码。哑编码的主要优点是编码后的特征具有较低的维度,适用于线性模型和一些需要较少特征的机器学习算法。
  2. 独热编码(One-Hot Encoding):
    独热编码是一种将分类变量转换为二进制向量表示的编码方法。对于具有k个类别的分类变量,独热编码会创建k个二进制特征,每个特征对应一个类别,并且只有一个特征的值为1,其余特征的值为0。独热编码的优点是它能够保留所有类别之间的相互独立性,适用于大多数机器学习算法,特别是需要考虑类别之间距离或关系的算法,如决策树、支持向量机等。
python 复制代码
import pandas as pd

# 创建包含分类变量的数据集
data = pd.DataFrame({'颜色': ['红', '蓝', '绿', '红', '绿']})

# 哑编码
dummy_encoded = pd.get_dummies(data['颜色'], prefix='颜色')
print(dummy_encoded)

# 独热编码
one_hot_encoded = pd.get_dummies(data['颜色'], prefix='颜色', drop_first=True)
print(one_hot_encoded)
python 复制代码
颜色_红  颜色_蓝  颜色_绿
0      1      0      0
1      0      1      0
2      0      0      1
3      1      0      0
4      0      0      1

   颜色_蓝  颜色_绿
0      0      0
1      1      0
2      0      1
3      0      0
4      0      1

例题:

1.类别无序:

采用哑编码或者onehot编码

2.类别有序:

直接映射到[0,m]

相关推荐
2501_941623321 小时前
人工智能赋能智慧农业互联网应用:智能种植、农业数据分析与产量优化实践探索》
大数据·人工智能
不爱吃糖的程序媛1 小时前
华为 CANN:昇腾 AI 的异构计算架构核心与开源生态解析
人工智能·华为·架构
AKAMAI2 小时前
从客户端自适应码率流媒体迁移到服务端自适应码率流媒体
人工智能·云计算
jinxinyuuuus2 小时前
GTA 风格 AI 生成器:跨IP融合中的“视觉语义冲突”与风格适配损失
人工智能·网络协议
如何原谅奋力过但无声2 小时前
TensorFlow 1.x常用函数总结(持续更新)
人工智能·python·tensorflow
翔云 OCR API2 小时前
人脸识别API开发者对接代码示例
开发语言·人工智能·python·计算机视觉·ocr
咚咚王者2 小时前
人工智能之数据分析 numpy:第十三章 工具衔接与迁移
人工智能·数据分析·numpy
咚咚王者2 小时前
人工智能之数据分析 numpy:第九章 数组运算(二)
人工智能·数据分析·numpy
YangYang9YangYan2 小时前
网络安全专业职业能力认证发展路径指南
大数据·人工智能·安全·web安全
aitoolhub2 小时前
精选AI设计工具测评:创新性、易用性及行业应用
人工智能·在线设计