我有2個數據框(工資和投球)。薪水(我們發現球員的薪水)有26'000個參賽項目,Pitching(我們發現球員的統計數據)有19'000項。顯然,賺取某些具體統計數據而不僅僅是薪水是相當複雜的,所以這是可理解的。合併2不等同數據框由多個條件
現在我想添加一個薪金列到Pitching數據框中,但只是匹配的(相同的球員,相同的日期)。我想代碼如
如果球員姓名(來自工資數據框)=球員姓名(來自投球數據框)和年份(來自薪水數據框)=年(從投球數據框),然後在投球數據框中插入薪水,否則寫N/A
然後以這種方式,我可以刪除與N/A的行,並與我想要的數據cleen工作表,可能少一點意見,但一個完整的。
我想是這樣的:
full_join(Salaries,Pitching, by="salary") %>%
mutate(condition = (Salaries$playerID == Pitching$playerID & Salaries$yearID = Pitching$yearID))
CombineDf <- merge(y=Salaries, y=Pitching, by=Pitching$playerID)
joined = cbind(Salaries[match(names(Pitching), Salaries$playerID),], Pitching)
Pitching$Salary <- ifelse(Salaries$playerID >= Pitching$playerID & Salaries$yearID >= Pitching$yearID, Salaries$salary, "N/A")
但遺憾的是沒有做正常工作。如果你能幫我解決這個問題,我會很高興。
非常感謝
*但遺憾的是沒有任何工作正常* ...這是什麼意思?錯誤?不想要的結果? – Parfait
嘿帕爾法斯感謝您的評論。是的,我成爲2 df的長度不一樣的錯誤。 –