1d 배열이 예상되었을 때 열 벡터 y가 전달되었습니다.
나는 맞게 필요 RandomForestRegressor
에서 sklearn.ensemble
.
forest = ensemble.RandomForestRegressor(**RF_tuned_parameters)
model = forest.fit(train_fold, train_y)
yhat = model.predict(test_fold)
이 코드는 데이터를 전처리 할 때까지 항상 작동했습니다 ( train_y
). 오류 메시지는 다음과 같습니다.
DataConversionWarning : 1d 배열이 예상되었을 때 열 벡터 y가 전달되었습니다. 예를 들어 ravel ()을 사용하여 y의 모양을 (n_samples,)로 변경하십시오.
모델 = forest.fit (train_fold, train_y)
이전 train_y
에는 시리즈 였지만 이제는 numpy 배열 (열 벡터)입니다. 적용 train_y.ravel()
하면 행 벡터가되고 오류 메시지가 나타나지 않습니다. 예측 단계를 통해 매우 오랜 시간이 걸립니다 (실제로는 완료되지 않습니다 ...).
문서 에서이 문제를 해결하는 방법에 대한 아이디어 로 정의되어야 함을 RandomForestRegressor
발견했습니다 .train_y
y : array-like, shape = [n_samples] or [n_samples, n_outputs]
이 줄을 변경하십시오.
model = forest.fit(train_fold, train_y)
에:
model = forest.fit(train_fold, train_y.values.ravel())
KNN 분류기 를 훈련 시키려고 할 때도 이런 상황이 발생했습니다 . 하지만 내가 변경 한 후 경고가 사라졌다 것으로 보인다 :
knn.fit(X_train,y_train)
에
knn.fit(X_train, np.ravel(y_train,order='C'))
이 줄 앞에 import numpy as np
.
아래 코드를 사용하십시오.
model = forest.fit(train_fold, train_y.ravel())
아래와 같이 오류로 인해 여전히 때리는 경우가 있습니까?
Unknown label type: %r" % y
이 코드를 사용하십시오.
y = train_y.ravel()
train_y = np.array(y).astype(int)
model = forest.fit(train_fold, train_y)
나는 같은 문제가 있었다. 문제는 레이블이 행 형식으로 예상되는 동안 열 형식이라는 것입니다. 사용하다np.ravel()
knn.score(training_set, np.ravel(training_labels))
이것이 해결되기를 바랍니다.
이를 수행하는 또 다른 방법은 ravel
model = forest.fit(train_fold, train_y.values.reshape(-1,))
'your programing' 카테고리의 다른 글
JOIN 문 (SQL)에서 정확히 "왼쪽"테이블과 "오른쪽"테이블은 무엇입니까? (0) | 2020.12.25 |
---|---|
SW를 호스팅하는 최고의 자식은 무엇입니까? (0) | 2020.12.25 |
왜 os.path.abspath와 os.path.realpath를 모두 사용합니까? (0) | 2020.10.16 |
“g ++ -Wall test.cpp -o test”의“-Wall”은 무엇을합니까? (0) | 2020.10.16 |
git로 비 저장소 파일을 제거 하시겠습니까? (0) | 2020.10.16 |