python - 我应该为 pca 缩放 box cox 数据吗?
问题描述
我已经使用电源变压器转换了我的数据集(有 9 列)以产生具有标准化的高斯分布。
from sklearn.preprocessing import PowerTransformer
pt = PowerTransformer(method='yeo-johnson',standardize=True)
#you can get the original data back using inverse_transform(X)
X_train=pt.fit_transform(X_train)
#fit the model only on the train set and transform the test set
X_test=pt.transform(X_test)
所以现在我的数据集对于大多数具有零均值和单位方差的特征几乎都是高斯分布。然后我应用了多项式特征():
from sklearn.preprocessing import PolynomialFeatures
poly = PolynomialFeatures(degree = 4)
X_poly = poly.fit_transform(X_train)
LR2 = LinearRegression()
LR2.fit(X_poly, y_train)
添加多项式特征后,我有 2380 列可能导致过度拟合,因此我想使用PCA进行降维,但我在某处读到 PCA 需要“缩放”数据(这通常意味着使用类似的东西更改值的范围最小最大缩放器())。
那么在将 PCA 应用于 boxcox 转换(和标准化)数据集之前,我应该使用 MinMaxScaler() 吗?
解决方案
推荐阅读
- javascript - 更新状态并在点击时获取数据(使用状态挂钩)
- javascript - 使用 JavaScript 映射键值对
- c++ - pmr::vector 比 std::vector 慢
- java - JDK 1.5 中的代码构建,但运行时使用 1.8,是否存在性能问题?
- docker - 如何在容器内从一个域“重定向”到另一个域?
- python - Pandas 的 Airflow 并行任务
- javascript - Firebase Firestore endBefore() 处理数据末尾
- bash - 如何使用 sed 或任何其他方法仅替换 magento envfile 中的 dbpassword
- architecture - 构建应用程序的授权在哪里是必要的?
- python - Django - 模型在字符串 'MM/DD/YYYY' 中有日期,在这种情况下我如何 order_by(date)?