我正在尝试构建一个分类器来预测特定时间的节目收视率。
我已经提取了大约 109 个特征,其中一些与时间场有关,即,
- 一年中的一天
- 一年中的月份
- 是在周末吗?
- 在工作时间?
- 公共假期?
我还包括了一些分类特征,并使用了标签二值化器来显示它出现在哪个频道和广播公司。
我想检查数据集的线性度,这将告诉我是否可以使用线性回归器或像神经网络这样的非线性东西。我决定使用 PCA 进行降维,以便可视化数据集是否在 2D 中线性可分。
from sklearn.decomposition import PCA
pca = PCA(n_components=2)
data_scaled = pca.fit_transform(df[cols])
plt.plot(data_scaled[:,0], data_scaled[:,1], 'ro')
plt.xlabel('first component')
plt.ylabel('second component')
plt.show()
我对结果感到非常困惑,无法解释这一点。
第一个组件的图:
第二个组件的图:
PCA 结果能说明什么?什么会导致这些图表?


