I want to see if a player’s shooting can predict their overall rating in EA FC 25.
- Data is from the EA FC 25 player database on Kaggle
- I removed goalkeepers
- I used simple linear regression
2026-10-20
I want to see if a player’s shooting can predict their overall rating in EA FC 25.
library(dplyr)
library(ggplot2)
library(plotly)
players <- read.csv("male_players.csv")
dim(players)
## [1] 16161 58
fc <- players %>% filter(Position != "GK") %>% select(Name, OVR, PAC, SHO, PAS) %>% na.omit() nrow(fc)
## [1] 14345
Most players are rated in the 60s and 70s.
\[Y = \beta_0 + \beta_1 X + \varepsilon\]
\[\hat\beta_1 = \frac{\sum (X_i - \bar X)(Y_i - \bar Y)}{\sum (X_i - \bar X)^2}\]
\[\hat\beta_0 = \bar Y - \hat\beta_1 \bar X\]
fit <- lm(OVR ~ SHO, data = fc) coef(fit)
## (Intercept) SHO ## 54.3162874 0.2271451
summary(fit)$r.squared
## [1] 0.2267019
ggplot(fc, aes(x = SHO, y = OVR)) + geom_point(alpha = 0.2) + geom_smooth(method = "lm", color = "red") + labs(x = "Shooting", y = "Overall rating")