python - MinMaxScaler 仅生成正值
问题描述
from sklearn import preprocessing
我有一个包含正负值的数据,如下所示:
(这里是数据的 csv 文件https://drive.google.com/file/d/1-Kc3vGDazAPQ_4I7wVvG6VI9Bd9b4uCW/view?usp=sharing)
分机是:| 索引 | 价值观 | | -------- | -------------- | | 1 | -5.473753 | | 2 | 54.730399 | | 3 | 0.389353 | | 4 | -4.156109 | | 5 | 65.108997 | | ... | ...... | | 第733章 14.082214 | | 第734章 107.248120 | | 735 | 54.730399 |
我正在尝试使用 MinMaxScaler,如下所示:
min_max_scaler = preprocessing.MinMaxScaler()
test_scaled = min_max_scaler.fit_transform(ext)
predictions_rescaled=min_max_scaler.inverse_transform(test_scaled)
predictions_rescaled 应该与 ext 相同,因为我正在缩放它然后重新缩放它,但令人惊讶的是两者都不同。谁能指导我在缩放重新缩放过程中出错的地方。
解决方案
检查您使用的 scikit 版本以及 MinMaxScaler 中是否存在错误。如果这不是问题,请检查您将数据传递给 MinMaxScaler 的方式。
从此处的 scikit-learn 文档中,它应该按预期运行。
我无法重现您的问题。它工作正常。我原来回来了:
import pandas as pd
from sklearn.preprocessing import MinMaxScaler
df = pd.read_csv('ext.csv', index_col=0)
scaler = MinMaxScaler()
df['minmax'] = scaler.fit_transform(df)
df['inv'] = scaler.inverse_transform(df[['minmax']])
推荐阅读
- swift - Swift 编译器错误:在范围内找不到变量
- php - 数据库未接收从 PHP/HTML 表单发送的数据
- python - 如何遍历列表中的每个名称以供用户输入?
- c++ - Arduino 的自定义 fstream 实现
- android - 而不是改变它的活动应用程序正在关闭
- robotframework - 使用机器人框架在同一个 jsession 中运行多个测试套件:Python
- javascript - 回文 Java 与 JavaScript
- node.js - 带有“express-fileupload”问题的 Firebase 文件上传
- python - 如何仅使用正则表达式重现默认的 sklearn CountVectorizer 标记化?
- ms-access - 如何在访问中获得周数