python数据变换如何实现

python数据变换如何实现

1、数据规范化,即归一化的方法

常见方法:最小-规范化、z-score规范化、小数定标规范化

importpandasaspd
df=pd.DataFrame(A.data[:,3:6])
df.columns=A.feature_names[3:6]
#最小-规范化,支持矢量运算
(df-df.min())/(df.max()-df.min())

#使用sklearn中的preprocessing模块
fromsklearnimportpreprocessing
preprocessing.minmax_scale(df)

#z-score规范化:结果=(数值-均值)/标准差,处理后数据的均值为0,标准差为1
(df-df.mean())/df.std()

#使用sklearn中的preprocessing模块
fromsklearnimportpreprocessing
preprocessing.scale(df)

#小数定标规范化:常见落在[-1,1]区间,通过移动小数点的位数实现,移动位数取决于属性绝对值的值的位数
#ceil向上取整
importnumpyasnp
df/10**np.ceil(np.log10(df.abs().max()))

2、连续属性离散化

常见方法:分箱法(等宽法、等频法)、聚类

importpandasaspd
#等宽法,5个箱子,标签为0-4
pd.cut(df.AGE,5,label=range(5))
#等频法
pd.qcut(df.AGE,5,label=range(5))

以上就是python数据变换的实现,希望对大家有所帮助。更多python学习指路:python基础教程