我對預測有多好一個NBA球員將在其接下來的比賽中發揮的基礎上,他們是如何以及在本賽季的所有以前的遊戲進行籃球模式工作。每個NBA球隊大概有10名球員,而且本賽季30支球隊每場都打了25場比賽,所以我的數據框在這一點上大概有10 * 30 * 25 = 7,500的觀測值。我每天運行我的模型,預測玩家在第二天的表現會如何 - 因此,對於明天我會做大約10 * 30 = 300的預測。GBM處理因子變量,擔心的因素太多
我的問題是這樣的 - 目前我有大約50列/要素/ x變量,我用於預測,所有這些都是數值變量(平均得分點數,籃板平均數量等)。不過,我認爲這可能有助於我的模型知道每一行對應哪個球員。也就是說,我想傳遞第51列,這是一個包含玩家名字的因子變量。我在網上讀到GBM可以處理因素變量,因爲它會在內部「愚弄」它們,但是我擔心300個不同的玩家「愚蠢」會表現不佳。由於會在內部創建大量虛擬變量,是否會將所有玩家名稱的因子變量傳回來,並最終傷害我的模型?或者這樣可以嗎?
my_df
PLAYER FG FGA X3P X3PA FT FTA
1042 Andre Drummond 6 16 0 0 6 10
17747 Marcus Morris 6 19 1 4 5 6
14861 Kentavious Caldwell-Pope 7 14 4 7 3 3
7976 Ersan Ilyasova 6 12 3 6 1 2
22401 Reggie Jackson 4 10 2 4 5 5
24475 Stanley Johnson 3 10 1 3 0 0
24649 Steve Blake 1 6 1 5 0 0
12489 Jodie Meeks 1 4 0 0 0 0
1955 Aron Baynes 3 5 0 0 0 0
21500 Paul Millsap 7 15 2 6 3 4
這部分我不清楚:「我認爲它可以幫助我的模型知道哪些球員每行對應」。否則你的模型不會知道誰進行了預測?你能發表一個有代表性的數據樣本嗎?一般GBM可以處理分類變量,但我不確定你在這裏需要一個。 –
我附上了我的數據框的外觀的一個簡短例子。我正在考慮將PLAYER列傳遞給GBM。 – Canovice
我知道我可以對其進行測試並查看性能,但我正在直觀地理解GBM如何創建300個虛擬變量來表示一列會影響模型 – Canovice