Verwenden Sie scikit-learn (sklearn), um mit fehlenden Daten für die lineare Regression umzugehen.
Ich habe es versucht, konnte es aber nicht für meine Daten zum Laufen bringen:Verwenden Sie Scikit Erfahren Sie, wie Sie eine lineare Regression für einen Zeitreihen-Pandadatenrahmen durchführen.
Meine Daten bestehen aus 2 DataFrames.DataFrame_1.shape = (40,5000)
undDataFrame_2.shape = (40,74)
. Ich versuche eine Art lineare Regression durchzuführen, aberDataFrame_2
enthältNaN
fehlende Datenwerte. Wenn ichDataFrame_2.dropna(how="any")
die Form fällt auf(2,74)
.
Gibt es einen linearen Regressionsalgorithmus in sklearn, der mit @ umgehen kanNaN
Werte?
Ich modelliere es nach demload_boston
vonsklearn.datasets
woX,y = boston.data, boston.target = (506,13),(506,)
Hier ist mein vereinfachter Code:
X = DataFrame_1
for col in DataFrame_2.columns:
y = DataFrame_2[col]
model = LinearRegression()
model.fit(X,y)
#ValueError: Input contains NaN, infinity or a value too large for dtype('float64').
Ich habe das obige Format verwendet, um die Formen so anzupassen, dass sie mit den Matrizen übereinstimmen.
Wenn Sie das @ postDataFrame_2
würde helfen, bitte kommentieren Sie unten und ich werde es hinzufügen.