기본 콘텐츠로 건너뛰기

파이썬(Python)을 이용한 산점도(scatter) 그리기

파이썬의 Matplotlib를 이용해 데이터의 산점도(scatter plot)를 그릴 수 있다.
예시를 통해 살펴보자.

먼저 아래와 같이 데이터 프레임 예시를 만든다.

1
 2
 3
 4
 5
 6
 7
 8
 9
10
import pandas as pd

height = [170, 168, 177, 181 ,172, 171, 169, 175, 174, 178, 170, 167, 177, 182 ,173, 171, 170, 179, 175, 177, 186, 166, 183, 168]
weight = [70, 66, 73, 77, 74, 73, 69, 79, 77, 80, 74, 68, 71, 76, 78, 72, 68, 79, 77, 81, 84, 73, 78, 69]

# DataFrame 만들기

body = pd.DataFrame(
    {'height': height, 'weight': weight}
)

body라는 이름의 데이터 프레임(테이블)이 만들어졌다.
이제, body 테이블의 데이터들의 분포를 산점도로 그려보자.

산점도를 그리는 코드는 아래와 같다.

1
 2
 3
 4
 5
 6
 7
 8
 9
10
# 산점도(scatter) 그리기

import matplotlib.pylab as plt

plt.scatter( body['weight'], body['height'], label = "data")

plt.legend(loc = "best")
plt.xlabel('weight')
plt.ylabel('height')
plt.show()

위 코드를 실행하면 아래와 같이 산점도 그래프가 그려진다.

코드의 내용은 아래와 같다.
- 먼저 Matplotlib를 import한다. Matplotlib는 파이썬에서 그래프를 그릴 수 있는 라이브러리다.
- plt.scatter()를 사용하여 scatter 그래프를 그릴 것을 지정한다. plt.scatter( x축 데이터, y축 데이터)가 기본 문법이다.
- 위 예시에서는 x축 데이터로 body 테이블의 weight를, y축 데이터로 body 테이블의 height를 지정하였다. 옵션으로 label을 지정하여 라벨(범례)를 붙였다.
- plt.legend()는 라벨을 표시하는 명령어이다. loc = "best"는 적당히 좋은 곳에 라벨을 표시하라는 의미이다.
- plt.xlabel()과 plt.ylabel()을 통해 x축, y축 이름을 각각 지정하였다.
- plt.show()를 통해 그래프를 우리가 볼 수 있도록 출력해준다.

끝.

댓글

이 블로그의 인기 게시물

웨딩 드레스 스케치 도안

웨딩 드레스샵 투어를 다니면서 샘플로 드레스를 입는 경우에는 드레스 사진을 찍지 못하게 하는 샵이 많다. ​ 그래서 투어를 돌고 나면 어떤 샵의 어떤 스타일이 신부에게 잘 어울렸는지 헷갈릴 수가 있다. ​ 하지만 투어를 다닐 때 드레스샵에서 입은 드레스의 특징과 느낌을 잘 기록하면 샵을 선택하는 데 도움이 될 수 있다. ​ 드레스 투어를 다닐 때 드레스를 기록할 스케치 도안은 아래 링크에서 확인/다운로드 할 수 있다. 웨딩 드레스 스케치 도안 확인/다운로드 하기 투어를 마친 후 드레스샵과 계약을 하고, 드디어 본식 드레스를 고를 때에는 사진을 찍을 수 있는 경우가 많다. ​ 이 땐 사진을 잘 찍어서 어떤 드레스를 입을지 잘 선택하도록 하자. ​ ​

파이썬(Python)을 이용한 피어슨 상관계수 구하기

피어슨 상관계수(Pearson correlation coefficient)는 두 변수 간의 상관관계를 확인하기 위한 가장 기본적인 방법이다. 피어슨 상관계수를 사용할 때 주의해야할 사항은 아래와 같다. - 상관관계가 인과관계를 의미하는 것은 아니다. 단순히 두 변수의 연관성을 확인하는 것이다. - 두 변수가 정규분포일 때 잘 작동한다.  - 이상치(outlier)에 민감하므로, 이상치는 제거하는 것이 좋다. - 두 변수가 완전히 동일하면 피어슨 상관계수는 1.0이다. 완전히 반대방향으로 동일하면 -1.0, 전혀 상관 없으면 0이다. 세부적인 해석은 아래와 같이 한다. - -1.0과 -0.7 사이이면, 강한 음적 선형관계 - -0.7과 -0.3 사이이면, 뚜렷한 음적 선형관계 - -0.3과 -0.1 사이이면, 약한 음적 선형관계 - -0.1과 +0.1 사이이면, 거의 무시될 수 있는 선형관계 - +0.1과 +0.3 사이이면, 약한 양적 선형관계 - +0.3과 +0.7 사이이면, 뚜렷한 양적 선형관계 - +0.7과 +1.0 사이이면, 강한 양적 선형관계 파이썬을 통해 피어슨 상관계수를 쉽게 구할 수 있다. 예시를 통해 알아보자. height, weight의 두 변수를 가지는 body라는 DataFrame을 만들었다. DataFrame을 만드는 과정은 아래의 포스트에서 확인할 수 있다.  "파이썬(Python) Pandas를 이용한 데이터프레임(DataFrame) 만들기" body 데이터프레임으로 피어슨 상관계수를 구하는 코드는 아래와 같다.  1 2 corr = body . corr(method = 'pearson' ) corr Jupyter Notebook으로 구하면 아래와 같은 결과를 얻는다. 표의 행과 열을 살펴보면 "height - height", "weight - weight"는 1이...