Python对数据进行量纲化处理

81 篇文章 2 订阅
78 篇文章 9 订阅
数据集的训练集和测试集划分
from sklearn.model_selection import train_test_split
patientdata为数据集
traindata, testdata = train_test_split(patientdata, test_size = 0.1)
数据标准化减小量纲的影响
import numpy as np
arr_mean = np.mean(patientdata) #求均值
arr_std = np.std(patientdata,ddof=1) #求标准差
newdata=(patientdata-arr_mean )/arr_std # 进行整体标准化
单独提取出Y,其余默认为X
Y=newdata['住院天数']
X=newdata.drop('住院天数',axis=1)

微信:realtimedata

归一是将不同规模的数据按照一定的比例转到同一规模下的一种处理方法。在数据挖掘、机器学习等领域中,常常需要对原始数据进行归一处理,以便消除不同特征(属性)之间的量纲影响,从而使各个属性对模式分类的权重相同。 Python中,可以使用scikit-learn库中的preprocessing模块中的方法对数据进行归一处理。其中,最常用的方法是z-score标准,又称为零均值归一,即将每个数据点减去其均值,再除以标准差。 以下是一个简单的Python程序,演示了如何对数据进行z-score标准,并绘制zscore图。 ```python import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn import preprocessing # 生成一组随机数据 np.random.seed(42) X = np.random.normal(loc=10, scale=2, size=(100, 3)) # 对数据进行z-score标准 Z = preprocessing.scale(X) # 绘制zscore图 fig, ax = plt.subplots(figsize=(8, 5)) ax.boxplot(Z) ax.set_xticklabels(['X1', 'X2', 'X3']) ax.set_ylabel('z-score') ax.set_title('zscore plot') plt.show() ``` 在上述代码中,首先使用numpy库生成了一组3个特征、100个样本的随机数据。然后,使用sklearn库中的preprocessing模块的scale()方法,对这组数据进行z-score标准。最后,使用matplotlib库绘制了zscore图,以观察每个特征的归一后的数据分布情况。 z-score标准是常见的数据归一方法之一,它可以使各个特征的单位相同,避免了某些特征对最终模型的建立产生过大的影响。在实际应用中,数据的归一方法会因具体情况而异。因此,在选择数据归一方法时,需要根据具体应用场景以及数据特点进行选择。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值