我想对一个包含大量特征(32列)的数据框使用聚类算法。
其中部分特征是使用独热编码器编码的。
我想使用主成分分析(PCA)来降低维度,使机器学习过程更简单。
是否可以只对数据框的某些列使用PCA,并保持其他列不变,然后使用机器学习模型?
还是必须在聚类之前对整个数据框使用PCA?
回答:
我认为你描述的方法应该没有问题。
这样做的效果实际上是将一些对象的特征合并成更少的特征,然后再结合其他未合并的特征一起使用。我不知道这会对结果产生什么影响;最好运行一个相关性分析,看看未合并的特征是否能为PCA合并的特征增加一些东西。你可能会发现它们基本上是重复已有的内容。
由于聚类是一种探索性方法,你基本上可以做任何你想做的事。当然,最好有理由这样做,否则就变成了简单的试错法,如果你找到了结果,你将无法解释为什么会得到这样的结果。对于某些数据集,可能存在多种聚类方式,因此你应该基于你对数据的已有了解做出决定,这样才能在这些方面得到合理的解释。
随机试错聚类直到找到一个结构,这使得解释该结构的有效性变得有些困难。