Tôi cần phải phù hợp với RandomForestRegressortừ sklearn.ensemble.
forest = ensemble.RandomForestRegressor(**RF_tuned_parameters)
model = forest.fit(train_fold, train_y)
yhat = model.predict(test_fold)
Mã này luôn hoạt động cho đến khi tôi thực hiện một số xử lý trước dữ liệu ( train_y). Thông báo lỗi cho biết:
DataConversionWarning: Một vectơ cột y được chuyển khi một mảng 1d được mong đợi. Vui lòng thay đổi hình dạng của y thành (n_samples,), ví dụ như sử dụng ravel ().
model = Forest.fit (train_fold, train_y)
Trước đây train_ylà một Chuỗi, bây giờ là mảng numpy (nó là một vectơ cột). Nếu tôi áp dụng train_y.ravel(), thì nó sẽ trở thành một vector hàng và không có thông báo lỗi nào xuất hiện, qua bước dự đoán mất rất nhiều thời gian (thực sự là nó không bao giờ kết thúc ...).
Trong tài liệu của RandomForestRegressortôi thấy rằng train_ynên được định nghĩa là y : array-like, shape = [n_samples] or [n_samples, n_outputs]
Bất kỳ ý tưởng làm thế nào để giải quyết vấn đề này?
train_ydữ liệu của mình để đảm bảo việc xử lý trước không làm hỏng nó chưa?
RF_tuned_parameterscho chúng tôi.
train_fold.shapevà làtrain_y.shapegì?