Hanya mencoba melakukan regresi linier sederhana tetapi saya bingung dengan kesalahan ini untuk:
regr = LinearRegression()
regr.fit(df2.iloc[1:1000, 5].values, df2.iloc[1:1000, 2].values)
yang menghasilkan:
ValueError: Found arrays with inconsistent numbers of samples: [ 1 999]
Pilihan ini harus memiliki dimensi yang sama, dan harus berupa array numpy, jadi apa yang saya lewatkan?
scikit-learn
cerah
sumber
sumber
Sepertinya Anda menggunakan pandas dataframe (dari nama df2).
Anda juga bisa melakukan hal berikut:
CATATAN: Saya telah menghapus "nilai" karena itu mengubah Seri panda menjadi numpy.ndarray dan numpy.ndarray tidak memiliki atribut to_frame ().
sumber
Terlihat di kursus dasar deep learning Udacity:
sumber
Saya pikir argumen "X" dari regr.fit harus berupa matriks, jadi berikut ini seharusnya berfungsi.
sumber
Saya mengalami kesalahan ini karena saya mengonversi data saya ke
np.array
. Saya memperbaiki masalah dengan mengubah data saya menjadinp.matrix
dan mengambil transpose.ValueError:
regr.fit(np.array(x_list), np.array(y_list))
Benar:
regr.fit(np.transpose(np.matrix(x_list)), np.transpose(np.matrix(y_list)))
sumber
Coba letakkan fitur Anda dalam tupel seperti ini:
sumber
Saya menghadapi masalah yang sama. Masalah dalam kasus saya adalah, Jumlah baris di X tidak sama dengan jumlah baris di y.
yaitu jumlah entri dalam kolom fitur tidak sama dengan jumlah entri dalam variabel target karena saya telah menghapus beberapa baris dari kolom freature.
sumber
Untuk menganalisis dua larik (larik1 dan larik2), mereka harus memenuhi dua persyaratan berikut:
1) Mereka harus numpy.ndarray
Periksa dengan
Jika tidak demikian, setidaknya salah satu dari mereka tampil
2) Dimensi harus sebagai berikut:
N adalah jumlah item yang ada di dalam array. Untuk menyediakan array1 dengan jumlah sumbu yang tepat lakukan:
sumber
Seperti yang disebutkan di atas, argumen X harus berupa matriks atau array numpy dengan dimensi yang diketahui. Jadi Anda mungkin bisa menggunakan ini:
Jadi, kerangka data Anda akan dikonversi menjadi larik dengan dimensi yang diketahui dan Anda tidak perlu membentuknya kembali
sumber
Beberapa hari saya menghadapi masalah yang sama. Alasannya adalah array ukuran yang berbeda.
sumber
selama tes split train Anda mungkin telah melakukan kesalahan
Kode diatas benar
Anda mungkin telah melakukan seperti di bawah ini yang salah
sumber