目标变量对数转换后的 SelectKBest ValueError

SelectKBest ValueError after Log-Transformation of Target-Variable

我目前正在对 Ames Iowa 数据集中的房价进行一些分析。 我已经成功地整理了数据并删除了所有缺失值等,我即将进行一些回归分析。我想构建三个回归模型,第一个具有两个最佳特征,第二个具有 15 个特征,第三个具有所有可用变量。我正在使用 SelectKBest 进行特征选择。我的目标变量是我对数转换的 'SalePrice' 。 由于某种原因,我总是从 SelectKBest 得到一个值错误。 有趣的是,如果我不对 'SalePrice' 进行对数转换,一切正常。 我检查了我的目标变量的数据类型,并如预期的那样是一个浮点数。
有人可以帮我吗?
我真的很感激!

您正在使用

SelectKBest(chi2)

根据 documentation of chi2:

参数:

X : {array-like, sparse matrix}, shape = (n_samples, n_features_in)
    Sample vectors.

y : array-like, shape = (n_samples,)
    Target vector (class labels).

chi2 仅适用于分类任务,不适用于回归。您当前预测销售价格的问题是回归任务,因此是错误的。

也许可以尝试用 f_regression 代替 chi2