Python数据挖掘之数据预处理

您所在的位置:网站首页 数据挖掘数据预处理实验报告 Python数据挖掘之数据预处理

Python数据挖掘之数据预处理

2023-08-20 08:43| 来源: 网络整理| 查看: 265

目录 Python主要数据预处理函数1、interpolate2、unique3、isnull / notnull4、andom5、PCA 在这里插入图片描述

Python主要数据预处理函数

在数据挖掘中,海量的原始数据中存在着大量不完整(有缺失值)、不一致、有异常的数据,严重影响到数据挖掘建模的执行效率,甚至可能导致挖掘结果的偏差,所以进行数据清洗就显得尤为重要,数据清洗完成后接着进行或者同时进行数据集成、转换、规约等一系列的处理,该过程就是数据预处理。数据预处理一方面是要提高数据的质量,另一方面是要让数据更好地适应特定的挖掘技术或工具。统计发现,在数据挖掘的过程中,数据预处理工作量占到了整个过程的60%。

​ 数据预处理的主要内容包括:数据清洗、数据集成、数据变换和数据规约

函数名函数功能所属拓展库interpolate一维、高维数据插值Scipyunique去除数据中的重复元素,得到单值元素列表,它是对象的方法名Pandas/Numpyisnull判断是否为空Pandasnotnull判断是否非空PandasPCA对指标变量矩阵进行主成分分析Scikit-Learnrandom生成随机矩阵Numpy 1、interpolate

功能: interpolate是Scipy的一一个子库,包含了大量的插值函数,如拉格朗日插值、样条插值、高维插值等。使用前需要用from scipy.interpolate import *引入相应的插值函数,可以根据需要到官网查找对应的函数名。

使用格式:

f = scipy.interpolate.lagrange(x,y)

​ 这里仅仅展示了一维数据的拉格朗日插值的命令,其中x, y为对应的自变量和因变量数据。插值完成后,可以通过f(a) 计算新的插值结果。类似的还有样条插值、多维数据插值等,此处不一一展示。

2、unique

**功能: ** 去除数据中的重复元素,得到单值元素列表。它既是Numpy库的一个函数(np.unique()),也是Series对象的一个方法。

使用格式:

np.unique(D) ,D是一维数据,可以是list、array、SeriesD.unique(),D是Pandas的Series对象

实例:

求向量A中的单值元素,并返回相关索引

D = pd.Series([1, 1, 2, 3, 5]) print(D.unique()) print(np.unique(D))

结果:

[1 2 3 5] [1 2 3 5] Process finished with exit code 0 3、isnull / notnull

功能: 判断每个元素是否空值 / 非空值

使用格式: D.isnull()/ D.notnull()。这里的D要求是Series对象,返回一个布尔Series。可以通过D [ D.isnull()]或D[D.notnull()]找出D中的空值 / 非空值。

4、andom

功能: random是Numpy的一个子库(Python本身也自带了random,但Numpy的更加强大),可以用该库下的各种函数生成服从特定分布的随机矩阵,抽样时可使用。

使用格式

np.random.randn(k, m, n,…生成一个k * m * n *… 随机矩阵,其元素均匀分布在区间(0,1)上np.random.randn(k, m, n…)_.生成一个k * m * n * …随机矩阵,其元素服从标准正态分布 5、PCA

功能: 对指标变量矩阵进行主成分分析,使用前需要用from sklearn.decomposition import PCA引入该函数。

使用格式: model = PCA()。 注意,Scikit-Learn 下的PCA是一个建模式的对象,也就是说,一般的流程是建模,然后是训练model.fit(D),D为要进行主成分分析的数据矩阵,训练结束后获取模型的参如.components_获取特征向量,以及.explained_ variance. _ratio_获取各个属性的贡献率等。

实例:

使用PCA()对一个10 * 4 维的随机矩阵进行主成分分析

from sklearn.decomposition import PCA D = np.random.randn(10, 4) pca = PCA() pca.fit(D) PCA(copy=True, n_components=None, whiten=False) print(pca.components_) # 返回模型的各个特征向量 print("*" * 50) print(pca.explained_variance_ratio_) # 返回各个成分个字的方差百分比

结果:

[[-0.73391691 0.22922579 -0.13039917 0.62595332] [-0.41771778 0.57241446 -0.02724733 -0.70506108] [ 0.22012336 0.49807219 0.80277934 0.24293029] [-0.48828633 -0.60968952 0.58120475 -0.22815825]] ************************************************** [0.50297117 0.28709267 0.14575757 0.06417859] Process finished with exit code 0


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3