TUNGchuan 2019-09-02 17:37 采纳率: 0%
浏览 3465
已采纳

机器学习中怎么使用保存的模型进行预测

我使用一个文档中的数据训练了岭回归模型并保存,想通过这个模型来预测另一个文档中的数据(两个文档中的数据只是数量不一样)

预测的文档中有2W+条数据,但是预测结果只有6000+条。

请问各位大神怎么才能使预测结果按每条数据的顺序全部得出来。

本人完全小白,论文想做个机器学习的东西...求各位大神指导

from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
import pandas as pd
import joblib as jb

def mylinear():
    """
    岭回归预测TOC
    :return: None
    """
    # 获取数据
    data = pd.read_csv("./NH25-4.csv")
    # 删除部分列
    data = data.drop(["E_HORZ", "E_VERT", "PR_HORZ", "PR_VERT", "Brittle_Horz%", "Brittle_Vert%", "POR", "DEPTH"],
                     axis=1)

    # 取出特征值和目标值
    y = data["TOC"]
    x = data.drop(["TOC"], axis=1)

    # 分割数据集到训练集和测试集
    x_train, x_test, y_train, y_test = train_test_split(x, y)

    # 标准化
    std_x = StandardScaler()

    x_train = std_x.fit_transform(x_train)
    x_test = std_x.transform(x_test)

    # 目标值
    std_y = StandardScaler()

    y_train = std_y.fit_transform(y_train.values.reshape(-1, 1))
    y_test = std_y.transform(y_test.values.reshape(-1, 1))

    # 加载模型
    model = jb.load("./test_Ridge.pkl")
    y_predict = std_y.inverse_transform(model.predict(x_test))

    print("保存的模型预测的结果:", y_predict)

if __name__ == "__main__":
    mylinear()
  • 写回答

1条回答 默认 最新

  • 繁华三千东流水 2019-09-02 18:21
    关注

    分割数据集到训练集和测试集
    x_train, x_test, y_train, y_test = train_test_split(x, y)
    你加载模型直接预测 不需要对数据进行再次切分 因为你切分为了训练集和测试集,所有测试集只有6000+数据。 你对数据处理的时候直接对整体进行处理
    然后整体预测就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 visual studio2022中文乱码无法解决
  • ¥15 关于华为5g模块mh5000-31接线问题
  • ¥15 keil L6007U报错
  • ¥15 webapi 发布到iis后无法访问
  • ¥15 初学者如何快速上手学习stm32?
  • ¥15 如何自动更换布娃娃图片上的衣服
  • ¥15 心理学eprime编程
  • ¥15 arduino esp8266开发
  • ¥15 stm32单片机通过485发送命令给驱动器控制电机转动,同样的代码f103可以控制电机转动,换到f407不能动了,但是用串口助手调试407显示发送的命令都是正确的,卡了好久了这是发送规则
  • ¥15 stm32f103c8t6最小系统板+2.8寸TFTLCD板子