image
image

Introduction

Our group will demonstrate how stress and its impact on health might arise from attending college. Setting off on the path of academics, we explore the detailed interaction between performance and wellbeing. As part of our effort to comprehend the complex dynamics of student life, we have collected data from engineering students that highlights important aspects of their everyday lives. We seek to break down the student life, from stress levels to extracurricular activity, from academic performance to headache frequency, and from sleep quality to study load. With this, we hope to provide insight into the interactions between several elements influencing engineering students’ overall experiences and provide insights into their struggles and successes. The SMART question we developed to shape our research focused on how stress is affected by students sleep, academic performance, and well-being and which affects it the most.

Experimentation

The objective of this experiment is to examine the relationship between the frequency of college, health issues, extracurricular activities and reported stress levels among college students.

Participants: College students from various disciplines were recruited to participate in the study. Data Collection: Participants were asked to rate their stress levels on a scale from 1 to 5, with 1 indicating low stress and 5 indicating high stress. They were also asked to indicate the number of times per week they engage in extracurricular activities. We calculated the averages to see which is the highest.

Control Variables: The study controlled for factors such as sleep quality, frequency of headaches, academic performance, and study load to isolate the impact of extracurricular activities on stress levels. Data Analysis: Statistical analysis, including correlation analysis was performed to examine the relationship between extracurricular activities and stress levels while accounting for control variables.

Datasets

library(ggplot2)
library(dplyr)
library(tidyr)

data <- read.csv("Student_Stress_Factors.csv")

# Histograms
par(mfrow=c(3, 2)) 
for (col in names(data)) {
  hist(data[[col]], main = col, xlab = col)
}

# Bar Plot - Mean Values
data_mean <- data %>%
  summarise_all(mean)

data_mean %>%
  gather() %>%
  ggplot(aes(x = key, y = value)) +
  geom_bar(stat = "identity") +
  labs(title = "Mean Values of Variables",
       x = "Variables",
       y = "Mean Value") +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))

Density Plots

means <- colMeans(data, na.rm = TRUE)


means_df <- data.frame(Variable = names(means), Mean = means)


print(means_df)
library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")

colnames(data) <- "Sleep_Quality"

# Plot the density of sleep quality
ggplot(data, aes(x = Sleep_Quality)) +
  geom_density(fill = "blue", alpha = 0.5) +
  labs(title = "Density Plot of Sleep Quality",
       x = "Sleep Quality",
       y = "Density")

library(ggplot2)

data <- read.csv("Student_Stress_Factors.csv")

Headache_data <- data$Quanitity.of.headaches.per.week

ggplot(data, aes(x = Headache_data)) +  # Use the variable you assigned
  geom_density(fill = "green", alpha = 0.5) +
  labs(title = "Density Plot of Headache Frequency",
       x = "Number of Headaches per Week",
       y = "Density")

library(ggplot2)

data <- read.csv("Student_Stress_Factors.csv")

Academic_data <- data$Rate.your.academic.performance

ggplot(data, aes(x = Academic_data)) +
  geom_density(fill = "skyblue", alpha = 0.5) +
  labs(title = "Density Plot of Academic Performance Ratings",
       x = "Academic Performance Rating",
       y = "Density")

library(ggplot2)

data <- read.csv("Student_Stress_Factors.csv")

study_data <- data$Rate.your.study.load

ggplot(data, aes(x = study_data)) +
  geom_density(fill = "black", alpha = 0.5) +
  labs(title = "Density Plot of Study Load",
       x = "Study Load",
       y = "Density")

library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")


Extracurricular_data <- data$Quantity.of.extracurricular.activities.per.week

ggplot(data, aes(x = Extracurricular_data)) +
  geom_density(fill = "salmon", alpha = 0.5) +
  labs(title = "Density Plot of Extracurricular Activities",
       x = "Extracurricular Activities",
       y = "Density")

library(ggplot2)

data <- read.csv("Student_Stress_Factors.csv")

stress_data <- data$Rate.your.stress.levels

ggplot(data, aes(x = stress_data)) +
  geom_density(fill = "red", alpha = 0.5) +
  labs(title = "Density Plot of Stress Levels",
       x = "Stress Levels",
       y = "Density")

Stress_vs_Sleep_data <- data[, c(data$Rate.your.sleep.quality, data$Rate.your.stress.levels)]

Stress_vs_Sleep_data
library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")

stress_level <- data$Rate.your.stress.levels

Extracurricular_data <- data$Quantity.of.extracurricular.activities.per.week

ggplot() +
  geom_density(data = data, aes(x = stress_data, fill = "Stress Levels"), alpha = 0.5) +
  geom_density(data = data, aes(x = Extracurricular_data, fill = "Extracurricular Activities"), alpha = 0.5) +
  labs(title = "Density Plot of Stress Levels vs Extracurricular Activities",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("red", "blue"), 
                    labels = c("Extracurricular Activities", "Stress Levels"),
                    name = "Legend")

library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")

stress_level <- data$Rate.your.stress.levels

Sleep_data <- data$Rate.your.sleep.quality

ggplot() +
  geom_density(data = data, aes(x = stress_data, fill = "Stress Levels"), alpha = 0.5) +
  geom_density(data = data, aes(x = Sleep_data, fill = "Sleep Quality"), alpha = 0.5) +
  labs(title = "Density Plot of Stress Levels vs Sleep Quality",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("orange", "blue"), 
                    labels = c("Sleep Quality", "Stress Levels"),
                    name = "Legend")

library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")

stress_level <- data$Rate.your.stress.levels

headaches_data <- data$Quanitity.of.headaches.per.week

ggplot() +
  geom_density(data = data, aes(x = stress_data, fill = "Stress Levels"), alpha = 0.5) +
  geom_density(data = data, aes(x = headaches_data, fill = "Quantity of headaches"), alpha = 0.5) +
  labs(title = "Density Plot of Quantity of headaches vs Stress",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("salmon", "blue"), 
                    labels = c("Quantity of headaches", "Stress Levels"),
                    name = "Legend")

library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")

stress_level <- data$Rate.your.stress.levels

academic_data <- data$Rate.your.academic.performance


ggplot() +
  geom_density(data = data, aes(x = stress_data, fill = "Stress Levels"), alpha = 0.5) +
  geom_density(data = data, aes(x = academic_data, fill = "Academic Performance"), alpha = 0.5) +
  labs(title = "Density Plot of Academic Performance vs Stress Levels",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("salmon", "blue"), 
                    labels = c("Academic Performance", "Stress Levels"),
                    name = "Legend")

library(ggplot2)


data <- read.csv("Student_Stress_Factors.csv")

stress_level <- data$Rate.your.stress.levels

study_data <- data$Rate.your.study.load


ggplot() +
  geom_density(data = data, aes(x = stress_data, fill = "Stress Levels"), alpha = 0.5) +
  geom_density(data = data, aes(x = study_data, fill = "Study Load"), alpha = 0.5) +
  labs(title = "Density Plot of Study Load vs Stress Levels",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("purple", "blue"), 
                    labels = c("Study Load", "Stress Levels"),
                    name = "Legend")

Hypothesis Testing

Null Hypothesis (H0): There is no significant correlation between the frequency of extracurricular activities and reported stress levels among college students. Alternative Hypothesis (H1): There is a significant correlation between the frequency of extracurricular activities and reported stress levels among college students. After collecting the data, statistical methods such as Spearman’s rank correlation coefficient can be employed to test the strength and significance of the relationship between these variables. The resulting p-value from the correlation test would indicate whether the observed correlation is statistically significant or occurred by chance. If the p-value is below a predetermined significance level (e.g., 0.05), the null hypothesis would be rejected, indicating that there is a significant correlation between the frequency of extracurricular activities and reported stress levels among the students.

library(readr)

data <- read_csv("Student_Stress_Factors.csv")

str(data)

head(data)


spearman_cor <- cor(data, method = "spearman")

print(spearman_cor)

library(corrplot)

correlation_matrix <- cor(data)

corrplot(correlation_matrix, method = "circle", type = "upper", tl.cex = 0.7)

summary(correlation_matrix)
library(readr)

options(readr.show_col_types = FALSE)

data <- read_csv("Student_Stress_Factors.csv")

columns <- setdiff(names(data), "Rate your stress levels")

p_values <- sapply(columns, function(col) {
  cor.test(data$`Rate your stress levels`, data[[col]], method = "spearman", exact = FALSE)$p.value
})

print(p_values)

Analysis

library(ggplot2)

data <- read.csv("Student_Stress_Factors.csv")

sleep_data <- data$Rate.your.sleep.quality

headaches_data <- data$Quanitity.of.headaches.per.week

academic_data <- data$Rate.your.academic.performance

extracurricular_data <- data$Quantity.of.extracurricular.activities.per.week

stress_level <- data$Rate.your.stress.levels

study_data <- data$Rate.your.study.load

ggplot(data) +
  geom_density(aes(x = sleep_data, fill = "Sleep Quality"), alpha = 0.5) +
  geom_density(aes(x = study_data, fill = "Study Load"), alpha = 0.5) +
  geom_density(aes(x = stress_level, fill = "Stress Levels"), alpha = 0.5) +

  labs(title = "Density Plot of Sleep Quality, Study Load, and Stress Levels",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("orange", "purple", "blue"),
                    labels = c("Sleep Quality", "Study Load", "Stress Levels"),
                    name = "Legend")

library(ggplot2)

data <- read.csv("Student_Stress_Factors.csv")

sleep_data <- data$Rate.your.sleep.quality

headaches_data <- data$Quanitity.of.headaches.per.week

academic_data <- data$Rate.your.academic.performance

extracurricular_data <- data$Quantity.of.extracurricular.activities.per.week

stress_level <- data$Rate.your.stress.levels

study_data <- data$Rate.your.study.load

ggplot(data) +
  geom_density(aes(x = stress_level, fill = "Stress Levels"), alpha = 0.5) +
  geom_density(aes(x = extracurricular_data, fill = "Extracurricular Activities"), alpha = 0.5) +
  geom_density(aes(x = academic_data, fill = "Academic Performance"), alpha = 0.5) +
  geom_density(aes(x = headaches_data, fill = "Quantity of headaches"), alpha = 0.5) +
  labs(title = "Density Plot of Sleep Quality, Study Load, and Stress Levels",
       x = "Value",
       y = "Density") +
  scale_fill_manual(values = c("blue","red","salmon","green"),
                    labels = c("Stress Levels","Extracurricular Activities","Quantity of headaches","Academic Performance"),
                    name = "Legend")

Predictions

  1. The project’s findings are probably going to make engineering students, professors, and administrators at universities more conscious of the value of extracurricular activities in reducing stress. This knowledge may cause an internal shift in educational institutions, emphasizing the complete well-being of students more.
  2. Colleges may carry out projects and programs to encourage extracurricular activity and stress reduction in engineering students. Workshops, materials, and guidelines created to encourage student involvement in a range of extracurricular activities could be included in these programs.
  3. Improved stress management and increased involvement in extracurricular activities may lead to benefits in a range of academic and nonacademic outcomes for kids. These could include higher academic performance, increased retention rates, enhanced interpersonal skills, and overall well-being.

Social Good

Stress Management Seminars

Stress Management Workshops: Educational universities could organize workshops or seminars focused on stress management techniques specifically for college students. These sessions could provide strategies for balancing academic workload with extracurricular involvement and offer practical tips for coping with stress effectively. Stress management workshops in college provide students with valuable skills, resources, and support networks to navigate the challenges of academic life more effectively, leading to improved mental health and overall well-being. With these workshops students won’t be stressed and be successful in their duration in college. Students can also use these strategies to reduce stress later in their life as well.


Conclusion

The project’s conclusions have significant implications for academic institutions as well as the larger education community. After finding the averages for each question, our group concluded that stress affected the academic performance the most. Next is the sleep quality and the other questions that follow it. Further research shows that feeling overwhelming college-related stress actually reduces your motivation to do the work, impacts your overall academic performance, and increases your odds of dropping out. To avoid this one must balance their college workload not to overwork or under-work, but to complete a decent amount of work that day and save it for another day. Also taking mental breaks in between to let your brain take a break from working or studying and then getting back to it with a fresh mind.

APA Citations

Samyakb. (n.d.). Student Stress Factors. Kaggle. Retrieved from https://www.kaggle.com/datasets/samyakb/student-stress-factors