首页 > 解决方案 > ValueError: Found array with dim 3. Estimator expected <= 2. 如何在随机森林回归器上使用它?

问题描述

我已经通过 csv 文件上传并尝试从整个 csv 文件中进行预测。我使用的模型是随机森林回归器来预测。我无法预测整个 csv 文件遇到这个 ValueError: Found array with dim 3. Estimator expected <= 2.

@app.route("/multiple",methods=["GET","POST"])
@cross_origin()
def multiple():
if request.method == 'POST':
    file=request.form["csvfile"]
    with open(file) as csvfile:
        csv_reader=csv.reader(csvfile,delimiter=",")
        next(csv_reader,None) 
        data=[]
        for line in csv_reader:
            data.append(line)
            mul_prediction=model.predict([(np.array(data))])
            result=round(mul_prediction[0])

标签: pythoncsvflaskprediction

解决方案


RandomForestRegressor.predict期待一个二维数组。当您将数据数组放入封闭列表中时model.predict([(np.array(data))]),您将隐式地将二维数据转换为 3 维数组。相反,只需使用model.predict(np.array(data)).


推荐阅读