导出sklearn模型以在R中运行

时间:2017-10-28 02:02:58

标签: python r scikit-learn

我在Python中使用sklearn构建了一个随机森林模型。如何导出模型对象irisfit,以便可以在R中读取并用于在那里进行预测?

import numpy as np
import pandas as pd

url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data"
names = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
iris = pd.read_csv(url, names=names)

from sklearn.ensemble import RandomForestClassifier
features = iris[['sepal-length', 'sepal-width', 'petal-length', 'petal-width']]
target = iris['class']
irisfit = RandomForestClassifier().fit(features, target)

2 个答案:

答案 0 :(得分:1)

我不确定是否可以将sklearn学习模型导出到R,您可以尝试两种方法来解决您的问题。

首先,尝试对库进行网格化。使用网状结构,您可以在R中采购Python脚本。(https://rstudio.github.io/reticulate/

另一种选择是使用Flask RESTful将ML模型部署为REST API,并使用httr库中的GET从R调用它。

答案 1 :(得分:0)

对于模型,您无法在R和Python之间进行交换。 Python中部署的模型将在Python中使用。如果你想在R中使用RF,那么为什么要在Python中构建它呢?虹膜数据也可以在R。

中找到

我认为如果您使用XGBoost,那么它可以从Python转移到R,反之亦然,但我从未尝试过。