簡體   English   中英

無法連接 ' 類型的 object<class 'numpy.ndarray'> '</class>

[英]Cannot concatenate object of type '<class 'numpy.ndarray'>'

當我嘗試連接訓練集和驗證集時遇到問題。 我將數據集拆分為訓練集、驗證集和測試集。 然后我用'StandardScaler()'縮放它們:

X_train, X_test, t_train, t_test = train_test_split(x, t, test_size=0.20, random_state=1)
X_train, X_valid, t_train, t_valid = train_test_split(X_train, t_train, test_size=0.25, random_state=1)
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_valid = sc.transform(X_valid)
X_test = sc.transform(X_test)

然后在 model 選擇之后,我想要連接訓練和驗證集:

X_train = pd.concat([X_train, X_valid])
t_train = pd.concat([t_train, t_valid])

但它不起作用。 我給我那個錯誤:

cannot concatenate object of type '<class 'numpy.ndarray'>'; only Series and DataFrame objs are valid

有人能幫我嗎? 謝謝

X_trainX_validt_traint_valid都是 numpy arrays 所以他們需要使用 numpy 連接:

X_train = np.concatenate([X_train, X_valid])
t_train = np.concatenate([t_train, t_valid])

正如評論中所建議的,將訓練集和驗證集合並在一起很可能不是一個好主意。 確保您了解為什么將數據集分為訓練、測試和驗證部分。 您可以應用交叉驗證以在多個步驟中將所有數據用於訓練/測試/驗證。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM