如何在Pandas数据框架中实现数据标准化
在这篇文章中,我们将学习如何对Pandas数据框架中的数据进行标准化。
标准化是特征缩放中一个非常重要的概念,它是特征工程的一个组成部分。当你为数据分析或机器学习收集数据时,我们会有很多特征,这些是独立的特征。在独立特征的帮助下,我们将尝试在监督学习中预测依赖特征。当你看到数据时,如果你看到数据中会有更多的噪音,这将使模型有可能受到异常值的影响。因此,我们通常会对数据进行规范化或标准化处理。现在让我们进一步讨论标准化的话题。
这是另一个缩减数据的过程,使机器学习模型更容易从中学习。在这种方法中,我们将尝试把平均值减少到’0’,把标准差减少到’1’。
你必须知道的另一件重要事情是,当你对数据进行规范化处理时,数值将缩减到一个特定的范围,即从0到1。
方法1:在pandas中实现[Z-Score]
为了使pandas中的数据标准化,Z-Score是pandas中一个非常流行的方法,用来对数据进行标准化。Z-Score将告诉我们一个数值与平均值相差多少个标准差。当我们对数据进行标准化处理时,数据将被改变成一种特定的形式,其频率的图形将形成一个钟形曲线。转换数据的公式是。
语法:
在这个方法中,我们将使用pandas内置函数mean()和std()对数据集的第一列进行标准化处理,这将给出该列数据的平均值和标准偏差。这样,通过简单的计算,用元素减去其平均值,再除以标准差,就可以得到数据的Z分数,也就是标准化的数据。
使用中的数据框架:
例子:数据的标准化
输出:
方法2:使用scipy.stats()
Scipy是一个科学计算库。它可以单枪匹马地处理任何复杂的数学计算。像所有的计算一样,Scipy也可以处理统计学计算,所以我们只需一行代码就可以找到任何一列的Z分数。
语法:
现在我们要通过使用scipy.stats.zscore()找到z分数来标准化我们数据的第二列,我们只需要提到这一列,该库就会处理一切。
例子:标准化的价值
输出:
方法3:使用sci-kit learn标准扩展器
Sci-kit earn是一个机器学习和模型构建库。我们可以在这个库中进行许多操作,如预处理、分析,以及为各种机器学习如监督和无监督学习问题建立模型。在这个库中,一个叫做standardcaler()的预处理方法被用来对数据进行标准化。
语法:
在这个例子中,我们要将整个数据转换为标准化的形式。要做到这一点,我们首先需要创建一个standardcaler()对象,然后对数据进行拟合和转换。
例子:标准化的价值
输出: