inflearn logo
강의

Course

Instructor

What if I were on the Titanic?! Building a Survival Probability Prediction AI Web Service with PyTorch & Next.js

2-3. Data Loading and Basic Exploration (Step 2 & 3)

코드(3-7. 계층적 데이터 분석) 중에 질문이 있습니다.

Resolved

57

outofmtx

7 asked

0

안녕하세요!

코드 중에서 이해 안가는 부분이 있어 질문드립니다.

fig = px.sunburst(df, path=["Pclass", "Sex", "SurvivalStatus"],
                  values="PassengerId", # 각 조각의 크기를 승객 수로 설정
                  title="Hierachical View of Survival by Class and Sex",
                  color="Survived", color_discrete_map={1:'gold', 0:'darkblue'})
fig.show()

여기에서

values="PassengerId", # 각 조각의 크기를 승객 수로 설정

이라고 하셨는데 PassengerId는 단순 인덱스 개념이 아닌가요? 왜 사람 수를 의미하게 되는지 이해가 잘 가지 않습니다.

 

python 딥러닝 pytorch next.js FastAPI

Answer 2

0

dakgangjung123

안녕하세요. 답변이 늦어서 죄송합니다!

질문하신 대로PassengerId는 각 승객을 식별하기 위한 고유한 일련번호(인덱스)일 뿐, 그 수치 자체가 어떤 양적 의미(무게, 가격 등)를 갖지는 않습니다. 저도 다시 코드를 읽어보니 px.sunburst 함수에서 values="PassengerId"라고 설정한 것은 수강생님께서 지적하신 것처럼 논리적으로 완벽한 설정은 아닙니다.


제가 그래프를 그리기 위해 사용한 Plotly의 sunburst 차트에서 values 파라미터는 지정된 컬럼의 값을 합산하여 차트 조각의 크기를 결정합니다.

  • 만약 values="Fare"라고 했다면, 승객들이 낸 운임의 합계에 따라 조각 크기가 결정됩니다.

  • 만약 values="PassengerId"라고 하면, 승객들의 ID 번호(1, 2, 3...)를 모두 더하게 됩니다. 예를 들어 ID 100번인 승객 한 명의 조각이 ID 1번인 승객 한 명보다 차트에서 훨씬 크게 표시되는 왜곡이 발생할 수 있습니다.

제가 강의를 제작했을 당시에 경우에는 데이터의 개수(Row Count)를 시각화하려는 의도였습니다만 수강생분께서 지적해주신 대로 '개수'를 정확히 표현하는 방법은 아닙니다.

따라서, 코드를 수정해본다면

df['Count'] = 1 
fig = px.sunburst(df, path=["Pclass", "Sex", "SurvivalStatus"], values="Count", ...)

이렇게 하면 각 승객(행)이 동일하게 '1'이라는 값을 갖게 되므로, 합산 결과가 곧 해당 그룹의 승객 수가 되어 조각 크기가 정확해집니다.


지적해주셔서 정말로 감사드립니다. 학습하시다가 또 이상하거나 궁금한 부분 보이면 언제든 편하게 말씀해주세요. 감사합니다!

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.
outofmtx님, 질문해주신 부분에 대해 설명드리겠습니다.

PassengerId는 데이터셋에서 승객마다 고유하게 할당된 ID로 보통 인덱스의 역할을 수행합니다. 그러나 이 경우 plotly.express.sunburst 함수의 values 매개변수에 PassengerId를 사용했기 때문에 이는 시각화할 때 각 조각의 크기를 결정하는 데 사용됩니다. PassengerId를 각 승객마다 하나씩 갖고 있다는 점을 이용하여 승객 수를 나타내는 매개변수로 쓸 수 있는 것입니다.

만약 PassengerId 대신 다른 데이터를 사용하고 싶다면, 별도로 그룹화하거나 필요한 데이터 전처리를 통해 승객 수를 나타내는 값으로 바꿔줄 수 있습니다.

도움이 되었길 바랍니다! 추가 질문이 있으시면 언제든지 물어보세요.

6-6

0

9

1

작업형 1 유형 부분

0

11

1

수강평 이벤트

0

17

2

Next.js + Tanstack Query BFF 구조 질문

0

13

1

순위가 동률일 때의 처리에 대해 질문드립니다.

0

15

2

import torch가 안되는 경우는 어떻게 하나요?

0

16

1

작업형 1 (삭제예정, 구 버전)

0

31

2

강의노트는 어디있나요?

0

17

1

노션 학습 자료 권한 요청

0

17

1

수강기간 연장 문의드립니다.

0

21

1

2유형 레이블 인코딩 VS 원핫 인코딩

0

24

3

part2강의 문의사항입니다.

0

19

2

수강기간 연장 문의드립니다.

0

26

1

인덱스 슬라이싱

0

27

2

현재 진행중인 강의에 마케팅 요소를 녹이는 방법

0

36

1

데브옵스에 관련된 지식

1

46

1

케이테스트 서버 운영 방법

2

44

1

코드를 첨부해야하는 이유가 있나요?

0

20

2

74. 데이터 캐시 - 1 (이론) 강의 영상 누락

0

27

1

2026.04에 추가된 강의 시청 불가

0

28

1

소리가 겹쳐서 들려요

0

21

2

데스크톱과 노트북 연결

0

27

1

파일명 , 폴더명 대문자 소문자, 케이스 구별법이궁금해요

0

80

1

강의 잘듣고있습니다. next js에서 src 폴더 및에 폴더들 이름 정의할때 첫글자를 대문자로하는 이유가있나요?

0

103

2