Skip to content

Does going to university in a different country affect your mental health? A Japanese international university surveyed its students in 2018 and published a study the following year that was approved by several ethical and regulatory boards.

The study found that international students have a higher risk of mental health difficulties than the general population, and that social connectedness (belonging to a social group) and acculturative stress (stress associated with joining a new culture) are predictive of depression.

Explore the students data using PostgreSQL to find out if you would come to a similar conclusion for international students and see if the length of stay is a contributing factor.

Here is a data description of the columns you may find helpful.

Field NameDescription
inter_domTypes of students (international or domestic)
japanese_cateJapanese language proficiency
english_cateEnglish language proficiency
academicCurrent academic level (undergraduate or graduate)
ageCurrent age of student
stayCurrent length of stay in years
todepTotal score of depression (PHQ-9 test)
toscTotal score of social connectedness (SCS test)
toasTotal score of acculturative stress (ASISS test)

View all the raw data from student

Spinner
DataFrameas
students
variable
-- Run this code to view the data in students
SELECT * 
FROM students;

Here's the average data results for PHQ-9 Score (Mental Health Diagnostic)

Spinner
DataFrameas
avg_phq_score_data
variable
SELECT
	stay,
	COUNT(*) AS count_int,
	ROUND(AVG(todep)::numeric, 2) AS average_phq
FROM students
WHERE inter_dom = 'Inter'
GROUP BY stay
ORDER BY stay DESC
LIMIT 9;

Here's the average data results for SCS Score (Self-Compassion Scale)

Spinner
DataFrameas
avg_scs_score_data
variable
SELECT
	stay,
	COUNT(*) AS count_int,
	ROUND(AVG(tosc)::numeric, 2) AS average_scs
FROM students
WHERE inter_dom = 'Inter'
GROUP BY stay
ORDER BY stay DESC
LIMIT 9;

Here's the average data results for ASISS Score (Acculturative Stress)

Spinner
DataFrameas
avg_as_score_data
variable
SELECT
	stay,
	COUNT(*) AS count_int,
	ROUND(AVG(toas)::numeric, 2) AS average_as
FROM students
WHERE inter_dom = 'Inter'
GROUP BY stay
ORDER BY stay DESC
LIMIT 9;

Final Output

Spinner
DataFrameas
df
variable
-- Data shows how long the student stay impacts the average mental health diagnostic scores of the international students present in the study.

-- The table contains: data on how long international students stay, number of international students grouped based on how long they stay, average data from each international student of PHQ-9 score (Mental Health Diagnostic), average data of SCS score (Self-Compassion Scale), and average data of ASISS score (Acculturative Stress). The table is grouped by data of stay in descending order. The table data is limited to 9.

SELECT
	stay,
	COUNT(*) AS count_int,
	ROUND(AVG(todep)::numeric, 2) AS average_phq,
	ROUND(AVG(tosc)::numeric, 2) AS average_scs,
	ROUND(AVG(toas)::numeric, 2) AS average_as
FROM students
WHERE inter_dom = 'Inter'
GROUP BY stay
ORDER BY stay DESC
LIMIT 9;