预测后无法缩放数据

问题描述 投票:0回答:1

我正在做一个项目,我试图预测从 1970 年到 2022 年的 MLB 球员统计数据。我有 2 个数据集,一个用于预测 5 个具有 20 个特征的统计数据的击球手,另一个用于预测 6 个统计数据的投手具有 25 个特征。我目前正在研究决策树模型,但也计划使用线性回归和 LSTM 模型。

在最初缩放数据集之前,我删除了字符串列、年份和用于比较结果的列。

remove_bat_cols = ['Name', 'Tm', 'Year', 'Nxt_BA', 'Nxt_RBI', 'Nxt_HR', 'Nxt_BB', 'Nxt_SO']
remove_pitch_cols = ['Name', 'Tm', 'Year', 'Nxt_ERA', 'Nxt_SO', 'Nxt_WHIP', 'Nxt_BB', 'Nxt_W', 'Nxt_SV']

bat_cols = batting.columns[~batting.columns.isin(remove_bat_cols)]
pitch_cols = pitching.columns[~pitching.columns.isin(remove_pitch_cols)]

然后我扩展了我的数据

scaler = MinMaxScaler()
batting.loc[:, bat_cols] = scaler.fit_transform(batting[bat_cols])
pitching.loc[:, pitch_cols] = scaler.fit_transform(pitching[pitch_cols])

我最初只是试图扭转我的步骤来缩小

batting.loc[:, bat_cols] = scaler.inverse_transform(batting[bat_cols])
pitching.loc[:, pitch_cols] = scaler.inverse_transform(pitching[pitch_cols])

但是我收到以下错误:

ValueError: operands could not be broadcast together with shapes (26768,29) (31,) (26768,29) 

我也尝试过添加预测列,甚至只尝试预测列并接收相同的列。

python machine-learning scikit-learn decision-tree
1个回答
0
投票

在网上进行了大量研究后,我找到了一个对我有用的解决方案:

https://datascience.stackexchange.com/questions/89511/how-to-use-inverse-transform-in-minmaxscaler-for-pred-answer-in-a-matrix

我意识到我不需要对整个数据集进行缩放,所以我只使用了预测的列。

如果有人对我的编码方式感兴趣:

## - BA
batting[['BA_DTR']] = round(batting[['BA_DTR']], 3)

## - RBI
bat_rbi_dtr = batting[['RBI_DTR']]
#scaled from 0 to 165
min = 0
max = 165
bat_rbi_dtr * min + (max - min)

batting['RBI_DTR'] = bat_rbi_dtr.astype(int)


## - HR
bat_hr_dtr = batting[['HR_DTR']]
#scaled from 0 to 73
min = 0
max = 73
bat_hr_dtr * min + (max - min)

batting['HR_DTR'] = bat_hr_dtr.astype(int)

## - BB
bat_bb_dtr = batting[['BB_DTR']]
#scaled from 0 to 232
min = 0
max = 232
bat_bb_dtr * min + (max - min)

batting['BB_DTR'] = bat_bb_dtr.astype(int)

## - SO
bat_so_dtr = batting[['SO_DTR']]
#scaled from 0 to 223
min = 0
max = 223
bat_so_dtr * min + (max - min)

batting['SO_DTR'] = bat_so_dtr.astype(int)

如果有人有任何更好/更清洁的选择,请随时回复

© www.soinside.com 2019 - 2024. All rights reserved.