python - 最小-最大缩放查询
问题描述
以下代码出现错误。
我正在尝试仅对数据帧的一项功能执行最小-最大缩放:
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
train_df['training_credits']= scaler.fit_transform(train_df['training_credits']).reshape(1,-1)
test_df['training_credits']= scaler.fit_transform(test_df['training_credits']).reshape(1,-1)
X=train_df[['department','education','Employee_Acheivement','training_credits','new_age_updated_new']]
y=train_df['is_promoted']
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = 0.2)
错误:-
ValueError Traceback (most recent call last)
<ipython-input-47-01a2518dfb0a> in <module>
3 #train_df=train_df.drop(['region'], axis=1)
4 #test_df=test_df.drop(['region'], axis=1)
----> 5 train_df['training_credits']= scaler.fit_transform(train_df['training_credits']).reshape(1,-1)
6 test_df['training_credits']= scaler.fit_transform(test_df['training_credits']).reshape(1,-1)
7 X=train_df[['department','education','Employee_Acheivement' ,'training_credits','new_age_updated_new']]
'
'
'
'
ValueError: Expected 2D array, got 1D array instead:
array=[49. 60. 50. ... 79. 45. 49.].
Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.
你能建议我哪里出错了吗?
解决方案
尝试这个:
scaler.fit_transform(train_df[['training_credits']].values)
或者
scaler.fit_transform(train_df['training_credits'].values.reshape(-1,1))
推荐阅读
- java - 如何使用 ObservableList 将文本附加到 TextArea
- django - 如何避免在 Django 中缓存文件的权限被拒绝?
- php - 如何使用php在复选框中打印/回显一个数字
- wordpress - Wordpress:帖子名称与页面永久链接冲突
- java - 确认 for 循环和流性能的 JMH 基准测试的有效性
- kotlin - Kotlin 解决函数调用 vararg 歧义
- css - 为什么border-radius不会成为这个的顶部和底部全圆?
- javascript - JavaScript HTML/DOM 更新卡住,直到所有 Ajax 调用完成。(在 Chrome/Safari 中)
- r - 根据标签对数据集进行分组
- python - 尝试在python中打印框架'*'和对角线