python - Python 预定脚本到 docker 容器
问题描述
我已经将 RandomForest 回归模型构建为 python 脚本。它接受两个 csv 文件进行训练和测试,执行训练和测试。然后打印预测和准确性,最后将预测保存为 csv 文件。我已将代码文件保存为 RandomForest.py。之后,我为 RandomForest.py 创建了一个批处理执行 (.bat) 文件。之后,我使用 Windows 任务计划程序来安排我的 Python 脚本(RandomForest.py)每周运行一次。之后,我将计划任务导出为“.xml”文件。我的问题:我想把这个 .xml 文件放在一个 docker 容器中,以便它每周运行一次。
RandomForest.py 代码:
from sklearn.ensemble import RandomForestRegressor
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
class Modelrf():
def __init__(self, train = "train.csv", test = "test.csv"):
self.X_train = pd.read_csv(train)
self.X_test = pd.read_csv(test)
self.linear_reg = LinearRegression()
self.random_forest = RandomForestRegressor()
def split(self):
self.X_train.dropna(axis=0, subset=['final_hourly_fee'], inplace=True)
self.X_test.dropna(axis=0, subset=['final_hourly_fee'], inplace=True)
self.y_train = self.X_train.final_hourly_fee
self.y_test = self.X_test.final_hourly_fee
def fit(self):
self.model = self.random_forest.fit(self.X_train, self.y_train)
def predict(self):
self.result = self.random_forest.predict(self.X_test)
return self.result
model_instance = Modelrf()
model_instance.split()
model_instance.fit()
model_instance.predict()
print(model_instance.result)
print("Accuracy: ", model_instance.model.score(model_instance.X_test, model_instance.y_test))
output = pd.DataFrame({'Id': model_instance.X_test.index,'Y Original': model_instance.y_test, 'Y predicted':model_instance.result})
output.to_csv('outputTest.csv', index=False)
.bat 文件:
python C:\Python\Headstrt\gitlab_pricing\myproject.git\RandomForest.py
pause
解决方案
您可以在 docker 容器中运行cron 作业。
此 cron 字符串将每周运行一次0 0 * * 0
。从这里得到这个。
推荐阅读
- javascript - 如何调用对象内部的函数?
- python - MobSF 安装错误 - 找不到 python 版本
- java - 如何使用 (.contains) 从数组列表中查找特定字符串
- gradle - Gradlew 永无止境的繁忙守护进程问题
- django - DJANGO:在一个基于类的视图中保存两个表单
- react-native - 在 React Native 中是否可以在多个视图上进行“拖动多选”类型的选择?
- c++ - 乘法表无法正常工作
- elasticsearch - 如何通过在 Elasticsearch 中搜索“food”找到单词“food2u”?
- javascript - 如何单击图标并做出反应 datepicker 将打开
- git - Git重命名初始分支:强制还是不强制?