인프런 커뮤니티 질문&답변

안병준님의 프로필 이미지

작성한 질문수

공공데이터로 파이썬 데이터 분석 시작하기

[13/20] scatterplot, regplot, lmplot, swarmplot 의 차이를 분양가 데이터 시각화로 이해하기

swarmplot 진행 시 경고문

20.07.01 22:36 작성

·

333

2

안녕하세요. 

우선 양질의 강의 감사합니다.

swarmplot 그리는 중에

다음과 같은 경고가 뜨는데 원인이 무엇인가요?

C:\Anaconda\lib\site-packages\seaborn\categorical.py:1326: RuntimeWarning: invalid value encountered in less
  off_low = points < low_gutter
C:\Anaconda\lib\site-packages\seaborn\categorical.py:1330: RuntimeWarning: invalid value encountered in greater
  off_high = points > high_gutter

답변 5

1

박조은님의 프로필 이미지
박조은
지식공유자

2020. 07. 06. 09:23

안녕하세요. 

seaborn 은 여러 라이브러리를 섞어서 고수준의 인터페이스를 제공하는 라이브러리에요.

이런 라이브러리들의 특징이 사용하기는 쉽지만 내부에서는 여러 라이브러리를 사용하고 있기 때문에 버전 업데이트 등의 문제가 종종 발생하는 편이에요.

이런 버전을 맞추는 작업이 분석하는 과정보다 까다롭고 어려운 편이에요 ㅜㅜ

이런 버전을 맞추다 보면 정작 하고자 하는 분석을 하는데 써야할 시간과 노력을 다 써버릴 수 있으니 경고메시지는 나중에 보셔도 괜찮을거 같아요.

감사합니다.

1

안병준님의 프로필 이미지
안병준
질문자

2020. 07. 05. 22:59

링크해주신 코드를 봐도 잘 이해가 되지는 않습니다만ㅜㅜ, 이해하려고 해보며
우선 강의 따라가 보도록 하겠습니다. 감사합니다.

1

박조은님의 프로필 이미지
박조은
지식공유자

2020. 07. 02. 09:07

안녕하세요.

보통 오류메시지와 경고메시지가 있는데 오류메시지는 코드가 아예 표시가 되지 않기 때문에 꼭 고쳐주셔야 해요.

경고메시지는 여러 이유로 발생하게 되는데요.

경고메시지는 무시해도 괜찮지만 여기에서 왜 경고메시지가 났을지 seaborn 의 소스코드를 찾아봤어요.

특정 값이 잘못되었거나 여러 라이브러리를 사용하면서 적절한 파라메터 값이 전달되지 않아서 발생할 수도 있는데 여기서 발생한 오류메시지가 아래와 같은 비교 연산을 하는데 적절한 데이터 타입이 들어가지 않은것 같아요.

 off_low = points < low_gutter

데이터프레임의 데이터를 확인해 봐야지 좀 더 자세히 알 수 있을거 같지만 아마도 결측치 혹은 계산이 불가한 데이터 타입이 섞여 있지 않을까 싶어요.

참고삼아 해당 소스코드를 다음의 URL 에서 확인해 보실 수 있어요.

https://github.com/mwaskom/seaborn/blob/a4a95425dd784b7d027fa92443f20b541fef96d5/seaborn/categorical.py#L1278

seaborn 은 내부적으로 matplotlib, pandas, numpy 등의 파이썬 라이브러리를 사용하는데 버전의 차이 등으로 저는 경고메시지가 발생하지 않았지만 저와 다른 버전을 사용하고 있다면 이런 경고 메시지가 발생할 수도 있어요.

그럼 저와 같은 버전을 사용하면 경고메시지가 안 나올 수도 있겠지만 해당 경고메시지 출력을 줄이기 위해 버전을 맞추는 일이 더 어려울수도 있고 소프트웨어의 버전은 계속 업데이트 되기 때문에 어떤 이유로 경고메시지가 발생하는지 정도를 알아두시는걸 더 추천해요.

1

안병준님의 프로필 이미지
안병준
질문자

2020. 07. 01. 22:48

선생님 답변속도가 ㅎㄷㄷ하시네요..

0

박조은님의 프로필 이미지
박조은
지식공유자

2020. 07. 01. 22:42

안녕하세요!

오류메시지만으로는 어디에서 오류가 났는지 확인이 어려워서요.

작성하신 코드와 또 코드에 사용한 데이터프레임의 스크린샷을 올려주시면 도움을 드릴 수 있을거 같아요.

감사합니다.