我正在使用 Sci-kit Learn 構建邏輯回歸模型。我的數據主要由 float 和 int 類型組成,除了 datetime64[ns] 的日期列(它的類型是第一個對象,然后我使用df['date'] = pd.to_datetime(df['date'],infer_datetime_format=True)我確實拆分了我的數據以進行訓練和測試,當我嘗試使用以下方法擬合模型時logr.fit(X,Y)出現以下錯誤:--------------------------------------------------------------------------- TypeError Traceback (most recent call last)<ipython-input-15-18dd45102c66> in <module>----> 1 logr.fit(X,Y)/opt/anaconda3/lib/python3.7/site-packages/sklearn/linear_model/_logistic.py in fit(self, X, y, sample_weight) 1342 X, y = self._validate_data(X, y, accept_sparse='csr', dtype=_dtype, 1343 order="C",-> 1344 accept_large_sparse=solver != 'liblinear') 1345 check_classification_targets(y) 1346 self.classes_ = np.unique(y)/opt/anaconda3/lib/python3.7/site-packages/sklearn/base.py in _validate_data(self, X, y, reset, validate_separately, **check_params) 430 y = check_array(y, **check_y_params) 431 else:--> 432 X, y = check_X_y(X, y, **check_params) 433 out = X, y 434 /opt/anaconda3/lib/python3.7/site-packages/sklearn/utils/validation.py in inner_f(*args, **kwargs) 71 FutureWarning) 72 kwargs.update({k: arg for k, arg in zip(sig.parameters, args)})---> 73 return f(**kwargs) 74 return inner_f 75 我不明白這個錯誤指向什么。但是從研究中,我發現它可能與日期類型有關,但在錯誤中沒有發現任何特別指出日期的錯誤。任何想法?
1 回答

一只名叫tom的貓
TA貢獻1906條經驗 獲得超3個贊
使用以下方法轉換日期后:
df['date'] = pd.to_datetime(df['date'],infer_datetime_format=True)
我應用了以下聲明:
df['date']=df['date'].apply(lambda x: x.toordinal())
它工作得很好。
添加回答
舉報
0/150
提交
取消