数据清洗与预处理

import pandas as pd

读取数据

data = pd.read_excel('E:/pythonProject5/深度学习/新建 XLS 工作表.xls')

打印数据的列名

print(data.columns)

删除缺失值

data.dropna(inplace=True)

删除重复值

data.drop_duplicates(inplace=True)

处理异常值

data = data[(data['涨跌幅'] >= -10) & (data['涨跌幅'] <= 10)]

数据归一化

最小-最大规范化

def min_max_scale(data): return (data - data.min()) / (data.max() - data.min())

对数据进行归一化

data['涨跌幅'] = min_max_scale(data['涨跌幅'])

Z-score规范化

def z_score_scale(data): return (data - data.mean()) / data.std()

对数据进行归一化

data['涨跌幅'] = z_score_scale(data['涨跌幅'])

数据标准化

from scipy.stats import boxcox

Box-Cox变换

需要保证数据为正数,如果数据中存在负数,则需要先进行平移操作

data['涨跌幅'] = data['涨跌幅'] - data['涨跌幅'].min() + 1 data['涨跌幅'], _ = boxcox(data['涨跌幅'])

对数据进行标准化

data['涨跌幅'] = z_score_scale(data['涨跌幅'])

from scipy.stats import yeojohnson

Yeo-Johnson变换

需要保证数据为正数,如果数据中存在负数,则需要先进行平移操作

data['涨跌幅'] = data['涨跌幅'] - data['涨跌幅'].min() + 1 data['涨跌幅'], _ = yeojohnson(data['涨跌幅'])

对数据进行标准化

data['涨跌幅'] = z_score_scale(data['涨跌幅'])

Python 数据清洗与预处理:从数据读取到标准化

原文地址: https://www.cveoy.top/t/topic/oYKk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录