개발로그필름

첫 번째 질문, 수면 시간과 수면의 질 간의 상관관계는? 본문

데이터분석가

첫 번째 질문, 수면 시간과 수면의 질 간의 상관관계는?

yuullog 2024. 12. 16. 12:45
728x90
반응형
SMALL

드디어 프로젝트의 첫 문을 열었다. 질문은 간단하다. “수면 시간과 수면의 질 간의 상관관계는 무엇일까?”

 

솔직히 말해서, 데이터 분석을 하지 않아도 “잠을 많이 자면 수면 질도 좋지 않을까?” 하고 얼추 예상할 수 있는 질문이다. 그래도 이 프로젝트는 결과보다 내가 지금껏 배운 것들을 복습하고 공부하려는 과정에 더 큰 의미가 있다. 직접 데이터를 다뤄보며 조금 더 객관적이고 구체적인 답을 찾아보려고 한다.

 

분석 과정

수면 시간과 수면의 질의 관계를 살펴보기 위해 데이터를 다음과 같은 단계로 처리했다.

우선, 필요한 두 개의 열(Sleep Duration과 Quality of Sleep)을 데이터셋에서 추출했다. 그런 다음, 두 변수 간의 상관계수(correlation)를 계산하고, 산점도(scatter plot)를 그려 시각화했다.

 

코드
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 데이터셋 불러오기
sleep_data = pd.read_csv('Sleep_health_and_lifestyle_dataset.csv')

# 필요한 열 추출
relevant_data = sleep_data[['Sleep Duration', 'Quality of Sleep']]

# 상관 계수 계산
correlation = relevant_data.corr().iloc[0, 1]

# 시각화: 산점도 그리기
plt.figure(figsize=(8, 6))
sns.scatterplot(data=relevant_data, x='Sleep Duration', y='Quality of Sleep')
plt.title(f'Correlation between Sleep Duration and Quality of Sleep (r = {correlation:.2f})')
plt.xlabel('Sleep Duration (hours)')
plt.ylabel('Quality of Sleep (scale)')
plt.grid(True)
plt.show()

 

상관계수란?

코드에서 corr() 함수를 사용해 상관계수를 계산했다. 이 함수는 두 변수 간의 선형 관계를 나타내는 값을 반환하며, 값의 범위는 -1에서 1 사이이다.

1에 가까울수록: 강한 양의 상관관계 (한 변수가 증가하면 다른 변수도 증가)

-1에 가까울수록: 강한 음의 상관관계 (한 변수가 증가하면 다른 변수는 감소)

0에 가까울수록: 상관관계가 거의 없음

correlation = relevant_data.corr() 실행시켰을때의 코드

 

대각선에 1이 나오는 건 같은 변수를 비교한 거니까 당연한 결과.

여기서 우리가 관심 있는 값은 0.88로, 이는 두 변수 간의 강한 양의 상관관계를 의미한다.

즉, 수면 시간이 많아질수록 수면의 질도 높아진다는 것을 알 수 있다.

다만, 상관관계는 인과관계를 의미하지 않으므로, “수면 시간이 늘어나면 반드시 수면의 질이 높아진다”고 단정할 수는 없다.

 

코드 실행시 나오는 산점도 그래프

 

실제로 이 상관관계를 산점도로 시각화해봤다. 산점도를 사용한 이유는 단순하다.

두 변수 간의 관계를 가장 직관적으로 보여주는 그래프이기 때문이다.

그래프를 보면, 점들이 오른쪽 위로 몰려 있는 걸 확인할 수 있다. 이는 수면 시간이 많아질수록 수면의 질도 높아진다는 걸 시각적으로 보여준다.

 

그래프에서 확인한 점

1. 점의 분포 : 오른쪽 위로 몰려 있는 점들이 양의 상관관계를 나타낸다. 즉, 수면 시간이 증가할수록 수면의 질도 높아진다.

2. 범위

• x축(수면 시간): 약 5.8시간 ~ 8.5시간

• y축(수면의 질): 약 4 ~ 9

3. 밀집도 : 점들이 직선에 가까운 형태로 분포되어 있어 상관관계가 강하다는 것을 보여준다.

 

분석 결과는 예상했던 대로 “수면 시간이 많아질수록 수면 질이 높다”는 결론을 보여줬다.

어찌 보면 뻔한 답이지만, 데이터를 직접 다뤄보고 이런 결론을 끌어내는 과정 자체가 굉장히 재미있었다.

 

특히, 상관계수 계산과 그래프 시각화를 통해 데이터를 해석하는 연습이 되었다는 점에서 의미가 있었다.

 

 

결론은?

“잠 많이 자면 좋지~” 하고 가볍게 넘길 질문이지만, 이제는 숫자와 그래프를 통해 그 근거를 말할 수 있다는 게 뿌듯하다.

이제 다음 궁금증을 풀러 가볼까나~~ 😊

 

 

반응형
LIST
Comments