使用sklearn的PCA库对数据进行预处理并保存为新的csv文件

本文介绍了如何使用sklearn库进行PCA(主成分分析)数据预处理。首先,导入所需包和数据,接着标准化数据。然后,通过决策树评估特征重要性。重点在于PCA的实施,观察主成分对特征方差的解释程度,并展示随着主成分数量增加,方差占比变化的曲线。最后,展示了如何指定主成分数量进行降维,并将处理后的数据保存为csv文件,保留小数点后三位。
摘要由CSDN通过智能技术生成

注:只关注PCA降维-- >翻到第四步

一:导入包以及数据

from sklearn.decomposition import PCA

df = pd.read_csv("..\data.csv",)
df=df.iloc[:,1:]

# 看一下数据是
print(df.head())

输出:在这里插入图片描述

二:数据标准化的两种方法

# 有无缺失值
df.isna().values.any()
# False 没有缺失值
X = df.iloc[:, :-1]
# 获取标签值
Y = df.iloc[:,[-1]]
# 数据标准化/归一化
# X=X.apply(lambda x: (x - np.min(x)) / (np.max(x) - np.min(x)))  # 方法一:标准差标准化:x=(x-mean)/std
X=(X - X.min()) / (X.max() - X.min())#方法二:离差标准化:x=(x-min)/(max-min)

三:使用sklearn的分类决策树函数判断各维的重要性,并用条形图展示,直观看到每一分量的重要性

# 使用sklearn 的DecisionTreeClassifier判断变量重要性
# 建立分类决策树模型对象
dt_model = DecisionTreeClassifier(random_state=1)
# 将数据集的维度和目标变量输入模型
dt_model.fit(X, Y)
# 获取所有变量的重要性
feature_importance = dt_model.feature_importances_
print(feature_importance)
# 结果如下
# [0.00437481 0.0046432  0.00571365 0.00357669 0.00304331 0.00706166...]
# 做可视化
x = range(len(df.columns[:-1]))
plt.bar(x, height=feature_importance)
plt.title("The importance of each feature")
plt.xlabel("feature")
plt.ylabel("feature importance")
plt
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值