如何在Pandas数据框架中实现数据标准化

如何在Pandas数据框架中实现数据标准化

在这篇文章中,我们将学习如何对Pandas数据框架中的数据进行标准化。

标准化是特征缩放中一个非常重要的概念,它是特征工程的一个组成部分。当你为数据分析或机器学习收集数据时,我们会有很多特征,这些是独立的特征。在独立特征的帮助下,我们将尝试在监督学习中预测依赖特征。当你看到数据时,如果你看到数据中会有更多的噪音,这将使模型有可能受到异常值的影响。因此,我们通常会对数据进行规范化或标准化处理。现在让我们进一步讨论标准化的话题。

这是另一个缩减数据的过程,使机器学习模型更容易从中学习。在这种方法中,我们将尝试把平均值减少到’0’,把标准差减少到’1’。

你必须知道的另一件重要事情是,当你对数据进行规范化处理时,数值将缩减到一个特定的范围,即从0到1。

如何在Pandas数据框架中实现数据标准化?

方法1:在pandas中实现[Z-Score]

为了使pandas中的数据标准化,Z-Score是pandas中一个非常流行的方法,用来对数据进行标准化。Z-Score将告诉我们一个数值与平均值相差多少个标准差。当我们对数据进行标准化处理时,数据将被改变成一种特定的形式,其频率的图形将形成一个钟形曲线。转换数据的公式是。

如何在Pandas数据框架中实现数据标准化?

语法:

df['column'] =( df['column'] - df['column'].mean() )/ df['column'].std()
Python

在这个方法中,我们将使用pandas内置函数mean()和std()对数据集的第一列进行标准化处理,这将给出该列数据的平均值和标准偏差。这样,通过简单的计算,用元素减去其平均值,再除以标准差,就可以得到数据的Z分数,也就是标准化的数据。

使用中的数据框架:

如何在Pandas数据框架中实现数据标准化?

例子:数据的标准化

# Importing the library
import pandas as pd
  
# Creating the data frame
details = {
    'col1': [1, 3, 5, 7, 9],
    'col2': [7, 4, 35, 14, 56]
}
  
# creating a Dataframe object
df = pd.DataFrame(details)
  
# Z-Score using pandas
df['col1'] = (df['col1'] - df['col1'].mean()) / df['col1'].std()
Python

输出:

如何在Pandas数据框架中实现数据标准化?

方法2:使用scipy.stats()

Scipy是一个科学计算库。它可以单枪匹马地处理任何复杂的数学计算。像所有的计算一样,Scipy也可以处理统计学计算,所以我们只需一行代码就可以找到任何一列的Z分数。

语法:

scipy.stats.zscore( df[column])
Python

现在我们要通过使用scipy.stats.zscore()找到z分数来标准化我们数据的第二列,我们只需要提到这一列,该库就会处理一切。

例子:标准化的价值

# Importing the library
import pandas as pd
import scipy
from scipy import stats
  
  
# Creating the data frame
details = {
    'col1': [1, 3, 5, 7, 9],
    'col2': [7, 4, 35, 14, 56]
}
  
# creating a Dataframe object
df = pd.DataFrame(details)
  
# Z-Score using scipy
df['col2'] = stats.zscore(df['col2'])
Python

输出:

如何在Pandas数据框架中实现数据标准化?

方法3:使用sci-kit learn标准扩展器

Sci-kit earn是一个机器学习和模型构建库。我们可以在这个库中进行许多操作,如预处理、分析,以及为各种机器学习如监督和无监督学习问题建立模型。在这个库中,一个叫做standardcaler()的预处理方法被用来对数据进行标准化。

语法:

scaler = StandardScaler() 
df = scaler.fit_transform(df) 
Python

在这个例子中,我们要将整个数据转换为标准化的形式。要做到这一点,我们首先需要创建一个standardcaler()对象,然后对数据进行拟合和转换。

例子:标准化的价值

# Importing the library
import pandas as pd
from sklearn.preprocessing import StandardScaler
  
  
# Creating the data frame
details = {
    'col1': [1, 3, 5, 7, 9],
    'col2': [7, 4, 35, 14, 56]
}
  
# creating a Dataframe object
df = pd.DataFrame(details)
  
# define standard scaler
scaler = StandardScaler()
  
# transform data
df = scaler.fit_transform(df)
Python

输出:

如何在Pandas数据框架中实现数据标准化?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册