-2

問題出在這裏: 它需要2個變量輸入,並預測結果。在Python中使用機器學習來加載自定義數據集?

例如pricevolume作爲輸入和買入/賣出的result決定。

我試着用K-Neighbors來實現這個沒有成功。你會怎麼做呢?

X = cleanedData['ES1 End Price'] #only accounts for 1 variable, don't know how to use input another. 
y = cleanedData["Result"] 
print(X.shape, y.shape) 
kmm = KNeighborsClassifier(n_neighbors = 5) 
kmm.fit(X,y) #ValueError for size inconsistency, but both are same size. 

謝謝!

+0

請出示cleanedData' –

+0

的'的定義是對問題的自定義數據,或如何從分類器中獲得預測? – doctorlove

+0

這是相同的原始計數?什麼是錯誤? –

回答

2

X需要一個matrix/2d array其中每列代表一個功能,這似乎並沒有真正從您的代碼,試圖重塑XX[:,None]到2d:

kmm.fit(X[:,None], y) 

或不借助於重塑,您最好總是使用列表從數據框中提取特徵:

X = cleanedData[['ES1 End Price']] 

或與m礦石多於一個的列:

X = cleanedData[['ES1 End Price', 'volume']] 

然後X將是一個二維數組,並且可以在fit可以直接使用:

kmm.fit(X, y) 
+0

這幫助了這個錯誤,但我想知道如何將X聲明爲兩列。到目前爲止,我所擁有的只是X = clearedData ['ES1 End Price'],但我還需要包含音量。有什麼想法嗎?上述建議是否還有另一個維度? – Akashdas221

+0

如果你有一個數據框,你可以執行'cleanData [['ES1 End Price','volume']]''這次不需要重新設計。 – Psidom

+0

感謝您的回覆 - 剛纔實現了上述功能,但是現在我在kmm.fit(X [:,None],y)行上得到了TypeError:難以置信的類型。建議? – Akashdas221

相關問題