inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

현업 실무자에게 배우는 Kaggle 머신러닝 입문_ax list 문의

327

노경모

작성한 질문수 3

0

figure, ax_list = plt.subplots(nrows=3, ncols=5)

figure.set_size_inches(20,20)

for i in range(len(full_column_list)):

sns.regplot(data=boston_house_df, x=full_column_list[i], y='PRICE', ax=ax_list[int(i/5)][int(i%5)])

ax_list[int(i/5)][int(i%5)].set_title("regplot " + full_column_list[i])

 

안녕하세요

 

현업 실무자에게 배우는 Kaggle 머신러닝 입문 - ML 엔지니어 실무 꿀팁 수업 즐겁게 듣고 있습니다 : ) 여기서 ax = ax_list 부분 설명 좀 부탁 드리겠습니다. 만약 i를 안쓰고 개별 1개 칼럼에 대해 그래프를 그린다면 ax = 뒤가 뭔지 궁금합니다. 이것만 알아도 위 코드가 이해될 것 같습니다.

 

감사합니다.

ax ax_line 보스턴 boston 머신러닝 machinelearning kaggle 캐글

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요.

ax_list는 (3,5) 모양의 subplot 그리드를 가진 Figure 객체의 Axes 객체입니다. 따라서 ax_list는 3개의 행과 5개의 열을 가진 그래프 그리드입니다. 앞서 코드에서 i는 full_column_list의 인덱스입니다. full_column_list의 길이는 15이기 때문에, for 루프가 15번 실행됩니다. 각 루프에서는 full_column_list[i]열과 PRICE열 간의 회귀선이 있는 regplot이 ax_list의 (i//5, i%5) 위치에 그려집니다.

따라서 i를 사용하지 않고 개별 칼럼에서 그래프를 그리려면, subplot의 위치를 제공하는 인수 ax를 명시해줘야 합니다. 예를 들어 한 개의 subplot을 그리고 싶다면 다음 코드처럼 작성할 수 있습니다.

fig, ax = plt.subplots()
sns.regplot(data=boston_house_df, x='RM', y='PRICE', ax=ax)
ax.set_title("regplot RM")

이렇게 하면 하나의 그래프만 그릴 수 있습니다.

혹시 추가로 궁금한 점이 있으면 댓글로 문의해주세요. 감사합니다.

기존 미국주식 자동매매 프로그램과 같은 AWS 서버에서 돌리려고 할때

1

15

1

안녕하세요? 강사님 질문있습니다.(인코딩관련)

0

19

2

이진분류에서 양성 클래스가 0일 때 평가 방법

0

20

2

원핫인코딩 전 train과 test 병합여부

0

37

2

수강기간 연장

0

39

2

Spark 3.5에서 pandas의 NaN이 NULL로 바뀌지 않을 때

0

35

1

Alpha vantage 유료화?

0

60

2

29강 작업2형의 이상치 처리

0

56

2

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

0

58

2

9월에 실기출제기준 개정내역에 신설된부분

0

53

1

colab 작동

0

58

2

작업형2 모의문제2 결과값 관련 문의드립니다.

0

64

2

12회차 시험 실패 후 13회 도전 예정입니다.

0

51

1

random_state 값

0

68

2

강의 연장 문의 드립니다.

0

63

2

강의 연장 문의

0

60

2

강사님 강의 자료와 코드를 부탁드리고 싶습니다.

0

56

2

오징어게임

0

65

1

[클라우드 설정 중 앞 내용 문의 사항]

1

41

1

선생님 강의자료를 받을수 없어요! 메일보냈어요.

0

56

2

object 컬럼이 여러 개인 경우 인코딩 전처리 방법

1

49

2

데이터 전처리 순서 관련

0

62

2

작업형2 모의문제 데이터 불러오기

0

60

2

강의 연장 부탁드립니다!

0

66

2