Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 向RESTAPI公开ML模型输出_Python_Pandas_Machine Learning - Fatal编程技术网

Python 向RESTAPI公开ML模型输出

Python 向RESTAPI公开ML模型输出,python,pandas,machine-learning,Python,Pandas,Machine Learning,我有一个示例模型,它具有以下功能 [ data['ApplicantIncome'], data['CoapplicantIncome'], data['LoanAmount'], data['Loan_Amount_Term'], data['Credit_History'], data['gender_Female'], data['marriage_Yes'], data['education_Graduate'],

我有一个示例模型,它具有以下功能

[
    data['ApplicantIncome'],
    data['CoapplicantIncome'],
    data['LoanAmount'],
    data['Loan_Amount_Term'],
    data['Credit_History'],
    data['gender_Female'],
    data['marriage_Yes'],
    data['education_Graduate'],
    data['employed_Yes'],
    data['property_Rural'],
    data['property_Semiurban'],
    data['property_Urban']
]
结果呢

{'Loan_ID': int(result[0]),'Loan_Status': result(result[1]) ]}
使用下面的代码,但会引发错误

IndexError: index 1 is out of bounds for axis 0 with size 1



import numpy as np
#need to 'conda install flask' for this to work
from flask import Flask, abort, jsonify, request
import pickle


my_random_forest = pickle.load(open("loan_pred.pkl", "rb"))

app = Flask(__name__)

@app.route('/api', methods=['POST'])
def make_predict():
    #all kinds of error checking should go here
    data = request.get_json(force=True)
    #convert our json to a numpy array
    predict_request = [data['ApplicantIncome'],data['CoapplicantIncome'],data['LoanAmount'], data['Loan_Amount_Term'],data['Credit_History'],data['gender_Female'],data['marriage_Yes'],data['education_Graduate'],data['employed_Yes'],data['property_Rural'],data['property_Semiurban'],data['property_Urban']]
    predict_request = np.array(predict_request).reshape(1,-1)
    #np array goes into random forest, prediction comes out
    result = my_random_forest.predict(predict_request)
    #return our prediction
    output = {'Loan_ID': int(result[0]),'Loan_Status': result(result[1]) }
    print(output)
    return jsonify(results=output)

if __name__ == '__main__':
    app.run(port = 9001, debug = True)

你能发布完整的堆栈跟踪吗?结果[1]可能是罪魁祸首,因为结果只有一个元素是正确的。这是我这边的一个问题。谢谢。