我有一个回归问题,我的数据有21个特征,我希望应用PCA降维。据我所知,到目前为止,我看到的所有教程都使用PCA来解决分类问题。我确实为回归做了主成分分析,但我无法显示很好的散射图,在x轴上显示PC1,在y轴上显示PC2,在中间显示目标。
我写了以下代码
X = self.X
pca = PCA(n_components=NUM_FEATURES_PCA)
principal_components = pca.fit_transform(X)
principalDf = pd.DataFrame(data=principal_components,
columns=['PC1', 'PC2'])
finalDf = pd.concat([principalDf, self.df[[self.target_variable]]], axis=1)
plt.scatter(finalDf.loc[self.df[self.target_variable], 'PC1']
, finalDf.loc[self.df[self.target_variable], 'PC2'], s=50)
plt.xlabel('PC1', fontsize=15)
plt.ylabel('PC2', fontsize=15)
plt.title('2 component PCA', fontsize=20)
plt.show()那么,在其他方面,我们能不能在回归中显示出这样的图形给PCA呢?或者我们应该通过二进制或类似的方式将连续的目标变量转换为一个范畴(标记为1)?
参考资料:这些地块
发布于 2020-01-14 10:08:38
首先,您可以在第一个平面(PC1 + PC2)中投射您的解释变量(连续变量)。箭头(投影)的方向和离轴原点有多远,就会告诉你,这些点是如何根据你的阶乘平面上的变量表示来分布的。
另一方面,快速的答案是将连续变量分组(将变量分解为序号变量),然后您将得到与引用相同的图。
此外,您可以尝试使用颜色标度(从白色到黑色,从红色到蓝色.)对散点图进行着色,然后根据连续变量在这个阶乘平面上查看数据是否有某种级数。
这三种“策略”实际上是一样的,尽管第二种策略对削减更敏感。
总结:
https://datascience.stackexchange.com/questions/66447
复制相似问题