[내일배움캠프] DAY21

채은·2025년 12월 26일

코트카타

def solution(absolutes, signs):
    a=[]
    for i, s in enumerate(signs):
        if s:
            a.append(absolutes[i])
        else
            a.append(absolutes[i]*(-1))
    answer = sum(a)
    
    return answer

여기서 왜 if s == 'true':가 아니고 if s:라고 적어야 하는지 의문..

=> 파이썬에서 if 문은 조건식이 "참"인지 확인하는데, s 자체가 이미 True 혹은 False이므로 별도의 비교 연산자(==) 없이 if s:라고만 적어도 충분하고 함.
그래서 if s == True: 이렇게 적거나 생략해서 if s: 이렇게 적어야 한다~

기초프로젝트

각 지표에 대해, 건강 이상 기준치를 조사
전처리&시각화 팀 프로젝트 3

해당 기준치를 초과한 사람의 비율을 흡연/비흡연자에서 각각 계산하고,
이를 시각화

Colab 링크

50대를 기점으로 흡연자에서 청력 저하가 더 가파르게 일어남

80대 이상을 제외하고는 흡연자에서 비만, 복부비만의 비율이 더 높게 나타남
공통적으로 40대에서 차이폭이 가장 크게 나타났고, 80대 이상에서는 우세가 뒤집힘

왜지? 평균적으로 비만, 복부비만자의 수가 40-50대가 많은가?
**관련 자료 찾아보기**

단백뇨는 두 그룹 모두에서 크게 나타나지 않았음
고혈당자의 비율은 전반적으로 흡연자에서 높았고, 30대 이후부터 수치가 벌어지기 시작해서 60대에서 가장 차이폭이 컸음

위 네가지는 콜레스테롤 지표들.
friedewald 공식이 아래와 같은데, 여기서 총 콜레스테롤에서 LDL이 가장 차지하는 비중이 높음. 그래서 위 그래프에서 고콜레스테롤, LDL이 비슷한 양상을 보임

LDL-C = 총 콜레스테롤 - HDL-C - (중성지방 / 5)

헤모글로빈 같은 경우에는 정상치 초과자의 비율로 봤을 땐, 흡연자와 비흡연자 차이가 크게 나타나지 않았음.
하지만, 이후 바이올린 플롯으로 수치의 분표를 보았을 땐 흡연자의 평균값, 최빈값이 비흡연자보다 훨씬 높게 나타남.

흡연/비흡연 사이의 차이에 대해선 t-test 필요
그리고 연령대가 높아짐에 따라 정상치 초과자의 비율이 올라가는 게 아니고 감소하는 게 흥미로움.
어떤 이유에서?

혈압 지표를 같이 묶어봤음.
처음 히트맵을 그렸을 때, 헤모글로빈이 가장 상관관계가 높게 나왔고
이를 기반으로 흡연이 심혈관계를 악화시킨다는 가설을 세웠었는데
위의 그래프들에선 흡연자, 비흡연자의 차이폭이 크지 않아
가설이 맞다고 결론 지을 수 없었음
맥압 -> 혈관의 탄력성을 나타내는 지표답게, 연령대가 올라갈 수록
정상치 초과자의 비율이 늘어남.

근데 여기서는 왜 또 40대가 가장 양호한거지...?
다른 그래프에선 거의 40대가 안좋게 나타났는데

간 관련 지표들. 특히 GTP에서 차이폭이 크게 나타남.

두 그래프를 보면 정상치를 초과하는 비율 자체는 비슷해보이지만
정상범위 내에서의 수치값이 흡연자가 높게 분포되어 있음

이 내용은 차라리
랜덤 추출로 샘플링하고
그걸로 히스토그램 겹쳐서 그린다음에
초과 기준 표시한 그래프가 나을지도?

.

그리고 여러 컬럼에서 40대 혹은 그 근처 연령대에서 차이폭이 가장 크게 나타나고
70-80대 이상에서는 차이가 거의 나타나지 않거나 오히려 역전되는 결과도 나타났었음
이렇게 비슷한 양상이 드러나는 이유가 뭐지?

https://velog.io/@chaen_99/전처리시각화-팀-프로젝트-4-가설

위 그래프는 흡연자는 비흡연자보다 대사증후군이 있을 확률이 높을 것이다라는 가설을 설정하고 이를 확인해본 결과.

profile
내일배움캠프 사전교육 수강중

0개의 댓글