数据挖掘学习——数据预处理方法代码汇总(python)

这篇具有很好参考价值的文章主要介绍了数据挖掘学习——数据预处理方法代码汇总(python)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、归一化处理方法

(1)min-max方法(离散归一化)

(2)零-均值规范化方法

(3)小数定标规范化

二、插值法

(1)拉格朗日插值法

三、相关性分析

(1)pearson相关性系数

(2)spearman相关性系数

四、主成分分析(PCA)


一、归一化处理方法

归一化常用方法有:

(1)min-max方法(离散归一化)

对原始数据的线性变换,将数据点映射到了[0,1]区间(默认)

一般调用sklearn库中的min_max_scaler函数实现,代码如下:

from sklearn import preprocessing
import numpy as np

x =  np.array(
    [[1972, 685, 507, 962, 610, 1434, 1542, 1748, 1247, 1345],

[262, 1398, 1300, 1056, 552, 1306, 788, 1434, 907, 1374],])

# 调用min_max_scaler函数
min_max_scaler = preprocessing.MinMaxScaler()
minmax_x = min_max_scaler.fit_transform(x)

(2)零-均值规范化方法

    把特征值的分布变化到均值为零。这种做法可以消除不同特征(或样本)之间的量级差异,使得特征之间的分布更加接近的变化,这在某些模型(如SVM)中,能够极大地提升处理效果,促使模型更加稳定,提升预测准确度。

代码实现:

import numpy as np
# 零-均值规范化
def ZeroAvg_Normalize(data):
    text=(data - data.mean())/data.std()
    return text

(3)小数定标规范化

小数定标规范化就是通过移动小数点的位置来进行规范化。小数点移动多少位取决于属性A的取值中的最大绝对值。

实现代码如下:

import numpy as np

# 小数定标规范化
def deci_sca(data):
    new_data=data/(10**(np.ceil(np.log10(data.max()))))
    return new_data

二、插值法

在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点。

插值是逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。

在图像的应用中,是填充图像变换时造成的空隙。

(1)拉格朗日插值法

在节点上给出节点基函数,然后做基函数的线性组合,组合系数为节点函数值的一种插值多项式。

可以通过调用scipy库中的lagrange方法实现,代码如下:

'''拉格朗日插值法实现'''
from scipy.interpolate  import lagrange
import numpy as np
x_known = np.array([987,1325,1092,475,2911])
y_known = np.array([372,402,1402,1725,1410])
new_data = lagrange(x_known,y_known)(4)
print(new_data)

三、相关性分析

(1)pearson相关性系数

协方差除以标准差的乘积,pearson相关系数是线性相关关系,pearson相关系数呈现连续型正态分布变量之间的线性关系。

调用corr()方法,定义参数为pearson方法即可实现,代码如下:

# pearson相关系数计算
corr_pearson = df.corr(method='pearson')

(2)spearman相关性系数

秩(有序)变量之间的Pearson相关系数,spearman相关系数呈现非线性相关,spearman相关系数不要求正态连续,但至少是有序的。

# spearman相关系数计算
corr_spearman = df.corr(method='spearman')

四、主成分分析(PCA)

主成分分析(Principal Component Analysis,PCA), 是一种统计方法,通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。

在数据预处理中,我们常用PCA的方法对数据进行降维处理,将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。

具体实现步骤如下:

1)首先对数据进行标准化,消除不同量纲对数据的影响,标准化可采用极值法

及标准差标准化法。

2)根据标准化数据求出方差矩阵。

3)求出共变量矩阵的特征根和特征变量,根据特征根,确定主成分。

4)结合专业知识和各主成分所蕴藏的信息给予恰当的解释。

可以直接调用sklearn中的pca方法实现,代码如下:

# 调用sklearn的PCA
from sklearn.decomposition import PCA
import numpy as np
import pandas as pd

df=pd.DataFrame({'能力':[66,65,57,67,61,64,64,63,65,67,62,68,65,62,64],

                '品格':[64,63,58,69,61,65,63,63,64,69,63,67,65,63,66],

                '担保':[65,63,63,65,62,63,63,63,65,69,65,65,66,64,66],

                '资本':[65,65,59,68,62,63,63,63,66,68,64,67,65,62,65],

                '环境':[65,64,66,64,63,63,64,63,64,67,64,65,64,66,67]
                 })

#调用sklearn中的PCA函数对数据进行主成分分析
pca=PCA()
pca.fit(df) # 用训练数据X训练模型

'''投影后的特征维度的方差比例'''
print('--------------投影后的特征维度的方差比例(每个特征方差贡献率)-------------------')
print(pca.explained_variance_ratio_)

'''投影后的特征维度的方差'''
print('--------------投影后的特征维度的方差-------------------')
print(pca.explained_variance_)
print('--------------模型的主成分对应的特征向量-------------------')
print(pca.components_)
print('--------------使用pca模型对数据进行降维-------------------')
print(pca.transform(df))# 对数据进行降维

运行结果:

数据挖掘学习——数据预处理方法代码汇总(python)

 文章来源地址https://www.toymoban.com/news/detail-472873.html

到了这里,关于数据挖掘学习——数据预处理方法代码汇总(python)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据挖掘(2.1)--数据预处理

    1.1基础知识 数据 是 数据对象(Data Objects)及其属性(Attributes) 的集合。 数据对象 (一条记录、一个实体、一个案例、一个样本等)是对一个事物或者物理对象的 描述 。 数据对象的 属性 则是这个对象的 性质或特征, 例如一个人的肤色、眼球颜色等是这个人的属性。 每一行为一

    2024年02月02日
    浏览(30)
  • 数据挖掘(2.2)--数据预处理

    目录   二、数据描述 1.描述数据中心趋势 1.1平均值和截断均值  1.2加权平均值 1.3中位数(Median)和众数(Mode) 2.描述数据的分散程度 2.1箱线图 2.2方差和标准差 2.3正态分布 3.数据清洗 3.1数据缺失的处理 3.2数据清洗 描述数据的方法,包括描述数据中心趋势的方法如 均值、中位

    2024年02月01日
    浏览(27)
  • 数据挖掘 | 实验一 数据的清洗与预处理

    1)了解数据质量问题、掌握常用解决方法; 2)熟练掌握数据预处理方法,并使用Python语言实现; PC机 + Python3.7环境(pycharm、anaconda或其它都可以) 清洗与预处理的必要性 在实际数据挖掘过程中,我们拿到的初始数据,往往存在缺失值、重复值、异常值或者错误值,通常这

    2023年04月08日
    浏览(34)
  • 【数据挖掘 | 数据预处理】缺失值处理 & 重复值处理 & 文本处理 确定不来看看?

    🤵‍♂️ 个人主页: @AI_magician 📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。 👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!🐱‍🏍 🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能硬件(虽然硬件还没开始玩,但一直

    2024年02月07日
    浏览(34)
  • 数据预处理在数据挖掘中的重要性

    数据挖掘作为从大量数据中提取有用信息和知识的过程,其结果的准确性和可靠性直接受到数据质量的影响。因此,数据预处理在数据挖掘中扮演着至关重要的角色。让我们探讨数据质量对数据挖掘结果的影响,并介绍常见的数据预处理方法以及它们如何提高数据挖掘的效果

    2024年03月20日
    浏览(37)
  • Python数据挖掘 数据预处理案例(以航空公司数据为例)

    1、数据清洗 2、数据集成 3、数据可视化 根据航空公司系统内的客户基本信息、乘机信息以及积分信息等详细数据,依据末次飞行日期( LAST_FLIGHT_DATE),以2014年3月31日为结束时间,选取宽度为两年的时间段作为分析观测窗口,抽取观测窗口2012年4月1日至2014年3月31日内有乘机记

    2024年02月04日
    浏览(33)
  • 数据挖掘实验(二)数据预处理【等深分箱与等宽分箱】

    在分箱前,一定要先排序数据,再将它们分到等深(等宽)的箱中。 常见的有两种分箱方法:等深分箱和等宽分箱。 等深分箱:按记录数进行分箱,每箱具有相同的记录数,每箱的记录数称为箱的权重,也称箱子的深度。 等宽分箱:在整个属性值的区间上平均分布,即每个

    2024年02月07日
    浏览(29)
  • GEO生信数据挖掘(六)实践案例——四分类结核病基因数据预处理分析

    前面五节,我们使用阿尔兹海默症数据做了一个数据预处理案例,包括如下内容: GEO生信数据挖掘(一)数据集下载和初步观察 GEO生信数据挖掘(二)下载基因芯片平台文件及注释 GEO生信数据挖掘(三)芯片探针ID与基因名映射处理 GEO生信数据挖掘(四)数据清洗(离群值

    2024年02月07日
    浏览(45)
  • matlab数据的获取、预处理、统计、可视化、降维 | 《matlab数学建模方法与实践(第三版)》学习笔记

    一、数据的获取 1.1 从Excel中获取 使用readtable() 使用xlsread()——xlswrite() 1.2  从TXT中获取 使用load() 使用textread() 使用fopen() fread() fclose()  使用fprintf()写入信息到txt  1.3 从图片中获取 使用imread  1.4 从视频获取  使用视觉工具箱中的VideoFileReader  二、数据的预处理 2.1 缺失值处

    2024年01月19日
    浏览(55)
  • 大数据采集技术与预处理学习一:大数据概念、数据预处理、网络数据采集

    目录 大数据概念: 1.数据采集过程中会采集哪些类型的数据? 2.非结构化数据采集的特点是什么? 3.请阐述传统的数据采集与大数据采集的区别? ​​​​​​​ ​​​​​​​4.大数据采集的数据源有哪些?针对不同的数据源,我们可以采用哪些不同的方法和工具? 数据

    2024年01月25日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包