Python数据标准化的方法

发布时间:2021-08-16 09:28:23 作者:chen
来源:亿速云 阅读:466

这篇文章主要讲解了“Python数据标准化的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python数据标准化的方法”吧!

说明

1、将原始数据转换为均值为0,标准差在1范围内。

2、对标准化而言:如果出现异常点,由于有一定数据量,少量异常点对平均值的影响不大,因此方差变化不大。

实例

def stand_demo():
    """
    标准化
    :return:
    """
# 1. 获取数据
    data = pd.read_csv('dating.txt')
    data = data.iloc[:, :3]
    print('data:\n', data)
 
# 2.实例化一个转换器类
    transfer = StandardScaler()

# 3.调用fit_transform()
    data_new = transfer.fit_transform(data)
    print('data_new:\n', data_new)
    return None

知识点扩充:

几种标准化方法:

归一化Max-Min

min-max标准化方法是对原始数据进行线性变换。设minA和maxA分别为属性A的最小值和最大值,将A的一个原始值x通过min-max标准化映射成在区间[0,1]中的值x',其公式为:

新数据=(原数据-最小值)/(最大值-最小值)

这种方法能使数据归一化到一个区域内,同时不改变原来的数据结构。

实现中心化Z-Score

这种方法基于原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。将A的原始值x使用z-score标准化到x'。

z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况。

新数据=(原数据-均值)/标准差

这种方法适合大多数类型数据,也是很多工具的默认标准化方法。标准化之后的数据是以0为均值,方差为以的正太分布。但是Z-Score方法是一种中心化方法,会改变原有数据的分布结构,不适合用于对稀疏数据做处理。

很多时候数据集会存在稀疏特征,表现为标准差小,很多元素值为0,最常见的稀疏数据集是用来做协同过滤的数据集,绝大部分数据都是0。对稀疏数据做标准化,不能采用中心化的方式,否则会破坏稀疏数据的结构。

用于稀疏数据的MaxAbs

最大值绝对值标准化(MaxAbs)即根据最大值的绝对值进行标准化,假设原转换的数据为x,新数据为x',那么x'=x/|max|,其中max为x锁在列的最大值。

该方法的数据区间为[-1, 1],也不破坏原数据结构的特点,因此也可以用于稀疏数据,一些稀疏矩阵。

针对离群点的RobustScaler

有些时候,数据集中存在离群点,用Z-Score进行标准化,但是结果不理想,因为离群点在标准化后丧失了利群特性。

RobustScaler针对离群点做标准化处理,该方法对数据中心化的数据的缩放健壮性有更强的参数控制能力。

感谢各位的阅读,以上就是“Python数据标准化的方法”的内容了,经过本文的学习后,相信大家对Python数据标准化的方法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. 数据标准化:数据资产化从0到1的起点
  2. python数据预处理之数据标准化的处理方式有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python

上一篇:JavaWeb怎么实现自动登录功能

下一篇:Android怎么实现模拟搜索功能

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》