【Python 数据分析】数据预处理:z-score 标准化、min-max 归一化、数据缺失值处理、数据重复处理
import numpy as np
import pandas as pd
from sklearn.preprocessing import MinMaxScaler
# 读取数据
data = pd.read_csv('data.csv')
# 使用z-score标准化
def z_score_normalize(data):
return (data - data.mean()) / data.std()
# 使用MinMaxScaler进行归一化
def min_max_normalize(data):
scaler = MinMaxScaler()
return scaler.fit_transform(data)
# 处理数据中的缺失值
def handle_missing_values(data):
# 假设我们用每列的平均值填充缺失值
return data.fillna(data.mean())
# 应用z-score标准化
data_zscore = z_score_normalize(data)
# 应用MinMaxScaler归一化
data_minmax = min_max_normalize(data)
# 处理数据中的缺失值
data_handled = handle_missing_values(data)
# 输出结果
print("Z-score 标准化后的数据:\n", data_zscore)
print("Min-max 归一化后的数据:\n", data_minmax)
print("处理缺失值后的数据:\n", data_handled)
这段代码首先导入必要的库,然后定义了三个函数来完成z-score标准化、min-max归一化和处理数据中的缺失值的任务。在应用这些变换之后,它会打印出处理后的数据。这个例子展示了如何使用pandas
和sklearn.preprocessing
来进行数据预处理,并且如何在面对数据缺失时进行处理。
评论已关闭