This project compares athletes training fast-twitch muscle fibers (sprinting, resistance training, plyometrics) versus those training slow-twitch fibers (jogging, light running). We analyze speed, endurance, and recovery time using a simulated dataset inspired by real-world studies.
The dataset includes 100 athletes with the following variables:
data <- read_csv("athlete_training_data_cleaned.csv")
## Rows: 100 Columns: 8
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Training_Type
## dbl (7): Athlete_ID, Age, STMF_Percentage, Speed_mps, Endurance_min, Recover...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
summary_stats <- data %>%
group_by(Training_Type) %>%
summarise(
Avg_Speed = mean(Speed_mps),
Avg_Endurance = mean(Endurance_min),
Avg_Recovery = mean(Recovery_Time_min),
Avg_STMF = mean(STMF_Percentage)
)
summary_stats
## # A tibble: 2 × 5
## Training_Type Avg_Speed Avg_Endurance Avg_Recovery Avg_STMF
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 Fast-Twitch 9.00 40.9 49.5 40.2
## 2 Slow-Twitch 5.81 73.1 30.0 69.4
speed_test <- t.test(Speed_mps ~ Training_Type, data = data)
endurance_test <- t.test(Endurance_min ~ Training_Type, data = data)
recovery_test <- t.test(Recovery_Time_min ~ Training_Type, data = data)
speed_test
##
## Welch Two Sample t-test
##
## data: Speed_mps by Training_Type
## t = 28.942, df = 97.101, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group Fast-Twitch and group Slow-Twitch is not equal to 0
## 95 percent confidence interval:
## 2.970204 3.407556
## sample estimates:
## mean in group Fast-Twitch mean in group Slow-Twitch
## 9.003774 5.814894
endurance_test
##
## Welch Two Sample t-test
##
## data: Endurance_min by Training_Type
## t = -21.44, df = 69.376, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group Fast-Twitch and group Slow-Twitch is not equal to 0
## 95 percent confidence interval:
## -35.22247 -29.22635
## sample estimates:
## mean in group Fast-Twitch mean in group Slow-Twitch
## 40.92453 73.14894
recovery_test
##
## Welch Two Sample t-test
##
## data: Recovery_Time_min by Training_Type
## t = 15.566, df = 97.825, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group Fast-Twitch and group Slow-Twitch is not equal to 0
## 95 percent confidence interval:
## 17.04279 22.02345
## sample estimates:
## mean in group Fast-Twitch mean in group Slow-Twitch
## 49.49057 29.95745
speed_plot <- ggplot(data, aes(x = Training_Type, y = Speed_mps, fill = Training_Type)) +
geom_boxplot() +
theme_minimal() +
labs(title = "Speed Comparison by Training Type", x = "Training Type", y = "Speed (m/s)") +
scale_fill_manual(values = c("Fast-Twitch" = "coral", "Slow-Twitch" = "skyblue"))
speed_plot
endurance_plot <- ggplot(data, aes(x = Training_Type, y = Endurance_min, fill = Training_Type)) +
geom_boxplot() +
theme_minimal() +
labs(title = "Endurance Comparison by Training Type", x = "Training Type", y = "Endurance (min)") +
scale_fill_manual(values = c("Fast-Twitch" = "coral", "Slow-Twitch" = "skyblue"))
endurance_plot
scatter_plot <- ggplot(data, aes(x = Speed_mps, y = Endurance_min, color = Training_Type)) +
geom_point(size = 3) +
theme_minimal() +
labs(title = "Speed vs. Endurance by Training Type", x = "Speed (m/s)", y = "Endurance (min)") +
scale_color_manual(values = c("Fast-Twitch" = "coral", "Slow-Twitch" = "skyblue"))
scatter_plot
Explore an interactive dashboard with additional visualizations: https://public.tableau.com/app/profile/alexander.gallagher/viz/Athlete_Training_Comparison/Dashboard1
Fast-twitch athletes have higher speeds (8–10 m/s) compared to slow-twitch athletes (5–6.7 m/s).
Slow-twitch athletes excel in endurance (60–90 minutes) compared to fast-twitch athletes (30–50 minutes).
Fast-twitch athletes take longer to recover (40–60 minutes) than slow-twitch athletes (20–40 minutes).
Training focus significantly impacts athlete performance. Fast-twitch training enhances speed, while slow-twitch training boosts endurance. These insights can guide training programs for athletes based on their goals.