我有一个单独的模型和堆垛机上面的复杂的方法。比如:
# GLMNET
glmnet_pipe = Pipeline([
("DATA_CLEANER", DataCleaner(demo='HH_F', mode='strict')),
("DATA_ENCODING", Encoder(encoder_name='code')),
("MODELLING", glm)
])
# XGBoost
xgb_1_pipe = Pipeline([
("DATA_CLEANER", DataCleaner(demo='HH_F', mode='strict')),
("DATA_ENCODING", Encoder(encoder_name='code')),
("SCALE", Normalizer(normalizer=NORMALIZE)),
("FEATURE_SELECTION", huber_feature_selector),
("MODELLING", xgb_1)
])
# set of our models
base_models = [glmnet_pipe, xgb1_pipe]
# using Stacker on top of those ones
StackingRegressor(
regressors=base_models,
meta_regressor=SVR()
)
但是,我也在R中用forecast
包实现了一个管道。就实现/重写Python的速度而言,我所有的R结果都有点“独特”。你知道吗
有没有办法把R代码合并到sklearn
?你知道吗
到目前为止,我认为有以下可能性:
import subprocess
CustomRModel = class():
def __init__(self, path, args):
self.path = path
self.args = args
self.cmd = ['RScript', self.path] + self.args
def fit(self, X, Y):
# call fit in R
subprocess.check_output(self.cmd, universal_newlines=True)
# read ouput of R.csv to Python dataframe
# pd.read_csv
return self
def predict(X):
# call predict in R
subprocess.check_output(self.cmd, universal_newlines=True)
# read ouput of R.csv to Python dataframe
# pd.read_csv
# calculate predict
return predict
然后像往常一样在管道中使用该类。你知道吗
或者你知道更酷的方法吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐