1. ๋ํ์ด(Numpy)
ํ์ด์ฌ์์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ๋ ๊ฐ์ฅ ์ฒ์ ๋ฐฐ์ฐ๋ ํจํค์ง ์ค ํ๋๋ ๋ฐ๋ก ๋ํ์ด(Numpy)๋ค.
์ฃผ๋ก ์ํ์์ ๋ฒกํฐ, ํ๋ ฌ ๋ฑ์ ์ฌ์ฉํ๋ ์ ํ๋์ ๊ณ์ฐ์ ์ฌ์ฉ๋๋ค. ์ ํ๋์๋ ๋ฐ์ดํฐ์ ์ฐจ์๊ณผ ๊ณต๊ฐ์ ๋ํด์ ๋ค๋ฃจ๋๋ฐ ์ฝ๋ฉํ๋ ๊ฒ์ ์ค์ ์ผ๋ก ์ธ๊ธํ ๊ฒ์ด๋ ์ผ๋ฐ๊ณฑ, ํ๋ ฌ๊ณฑ, ํญ๋ฑํ๋ ฌ์ ๋ํ ๊ฒ๋ค์ ๋ฐ๋ก ์์ธํ ๋ค๋ฃจ๋๋ก ํ๊ฒ ๋ค.
- ์ฌ์ฉ๋ฒ
numpy๋ np๋ผ๋ ๋ณ๋ช (์ฝ์นญ)์ผ๋ก ๋ํ๋ด๋ฉฐ import๋ฅผ ์ฌ์ฉํด์ ๋ถ๋ฌ์จ๋ค.
import numpy as np
1์ฐจ์ ๋ฐฐ์ด ๋ํ๋ด๊ธฐ
num1์ด๋ผ๋ ๋ณ์๋ฅผ ํ๋ ๋ง๋ค์ด์ฃผ๊ณ ๊ทธ ์์ arrayํจ์๋ฅผ ์ฌ์ฉํด ๋ฆฌ์คํธ๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ๋ฐฐ์ด๋ก ๋ณํํด์ค๋ค.
๋ค์ฐจ์ ๋ฐฐ์ด ๋ํ๋ด๊ธฐ
์๋์ ๊ฐ์ด ๋๋ค(random)ํจ์๋ฅผ ์ด์ฉํด (x, y) xํ y์ด์ ๋๋คํ ๋ฆฌ์คํธ๋ฅผ ๋ฐฐ์ด๋ก ๋ณํํ ์๋ ์๋ค.
*๋๋คํจ์: ๋ฒ์๊ฐ 0~1๊น์ง์ธ ํจ์
๋ฐฐ์ด ๊ฐ์ฒด์ ํ์ ์ ํ์ธํ๋ ค๋ฉด typeํจ์๋ฅผ ์ด์ฉํด ํ์ธํด๋ณด๋ฉด ndarray์์ ์ ์ ์๋ค.
*ndarray: numpy์ ๋ฐฐ์ด ๊ฐ์ฒด
๋ฒ์๋ฅผ ์ง์ ํ ๋ฐฐ์ด ์์ฑ
arangeํจ์๋ (start, stop, step) ์ด๋ (start, stop) ํน์ (stop) ์ผ๋ก๋ง ์ธ์๋ฅผ ์์ฑํ์ฌ ์๋์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ค.
- 0๋ฒ์งธ์์ 10๋ฒ์งธ(0~9)๊น์ง 2์คํ ์ฉ ๊ฐ๋ ๊ฐ์ ๋ฐฐ์ด
- 1๋ฒ์งธ์์ 10๋ฒ์งธ(1~9)๊น์ง ๋ฐฐ์ด
- 5๊น์ง(0~4)์ ๋ฐฐ์ด
2. ํ๋ค์ค(Pandas)
ํ๋ค์ค๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ดํฐํ๋ ์(DataFrame)์ด๋ผ๋ ๊ฐ์ฒด๋ฅผ ์ด์ฉํ ํ ๊ธฐ๋ฐ์ ๋ฐ์ดํฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค.
ํ๊ณผ ์ด๋ก ์ด๋ฃจ์ด์ง ๊ฐ์ฒด๋ค์ ๋ค๋ฃฐ ์ ์์ผ๋ฉฐ ์์ ์ ์ผ๋ก ๋์ฉ๋์ ๋ฐ์ดํฐ๋ค์ ์ฒ๋ฆฌํ๊ธฐ ์ฉ์ดํ๊ณ , ๊ตฌ์กฐ์ ์ธ ๋ฐ์ดํฐ ํ์์ ์ฒ๋ฆฌ์ ๊ฐํ๋ค. ๊ฐ์ ๋ฐ์ดํฐ ํ์ ์ ๋ฐฐ์ด๋ง ์ฒ๋ฆฌํ ์ ์๋ Numpy์ ๋ฐํด Pandas๋ ๋ฐ์ดํฐ ํ์ ์ด ๋ค์ํ๊ฒ ์์ฌ์์ด๋ ์ฒ๋ฆฌํ ์ ์๋ค. pandas์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ Series, DataFrame, Panel์ผ๋ก ๋์ด์๋ค.
์ด์ค์์ ์ฃผ๋ก Series(1์ฐจ์), DataFrame(2์ฐจ์)์ ๋ง์ด ๋ค๋ฃฌ๋ค๊ณ ํ๋ค.
- ์ฌ์ฉ๋ฒ
import๋ฅผ ์ฌ์ฉํด pandas๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ถ๋ฌ์จ๋ค.
import pandas as pd
1์ฐจ์ ๋ฐ์ดํฐ(Series)๋ฅผ ํ์ฉํ (์ํ์ค)๋ฐ์ดํฐ ์์ฑ
Series()์ ์ธ์๋ก๋ seq_data๊ฐ ๋ค์ด๊ฐ๋ค. ์ฌ๊ธฐ์์๋ ๋ฆฌ์คํธ์ ํํ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ถ ์ฌ์ฉํ ์ ์์ง๋ง
์ฃผ๋ก ๋ฆฌ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํ๋ค. seq_data์์๋ ์ผ์ชฝ ์ธ๋ก์ถ์ ์๋ ๋ผ๋ฒจ์ index๋ผ๊ณ ํ๊ณ , ์ ๋ ฅ๋ ๋ฐ์ดํฐ๋ฅผ value๋ผ๊ณ ํ๋ค.
์์ ๊ฒฐ๊ณผ์์๋ ๋ฐ์ดํฐ๋ค ์์ ์ธ๋ฑ์ค๊ฐ ์์๋๋ก ์์ฑ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
- index์ value๋ฅผ ๋ถ๋ฆฌํด์ ๊ฐ์ ธ์ฌ ์๋ ์๋ค.
- RangeIndex๋ index๋ฅผ ๋ฒ์๋ก ํ์ํ ๊ฒ์ด๋ค.
- values๋ ๋ฆฌ์คํธ์ ๊ทธ ๊ฐ์ ๋ฐ์ดํฐ ํ์ (int64: ์ ์)๋ฅผ ํ์ํ ๊ฒ์ด๋ค.
์ถ๋ ฅ ๊ฒฐ๊ณผ๋ Numpy์ ๋ฐฐ์ด๊ณผ ํ์์ด ๋น์ทํ ๊ฒ์ ๋ณผ ์ ์๋ค.
์ด์ธ์๋ ์๋์ฒ๋ผ index์ธ์๋ฅผ ๋ฐ๋ก ๋ง๋ค์ง ์๊ณ ๋์ ๋๋ฆฌ๋ฅผ ์ด์ฉํด ๋ฐ์ดํฐ์ ์ธ๋ฑ์ค๋ฅผ ํจ๊ป ์์ฑํ ์ ์๋ค. ๐๐ฝ
s = pd.Series(dict_data)
2์ฐจ์ ๋ฐ์ดํฐ(DataFrame)๋ฅผ ํ์ฉํ ๋ฐ์ดํฐ ์์ฑ
๋ฐ์ดํฐ ํ๋ ์์ ์๋์ฒ๋ผ ์ ์ฅ๋์ด ์๋ ๋ฐ์ดํฐ ํ์ผ์ ์ฝ์ด์ฌ ๋ ์ฌ์ฉํ๊ธฐ๋ ํ๊ณ ,
DataFrame()์ ์ธ์์ธ data์ ๋ฆฌ์คํธ์ ํํ๊ฐ ๋น์ทํ ๋ฐ์ดํฐ ํ์ ๋ค์ ์ ๋ถ ์ฌ์ฉํ ์ ์๋ค.
์ฆ, ๋ฆฌ์คํธ์ ๋์ ๋๋ฆฌ ํ์ ์ ๋ฐ์ดํฐ, Numpy์ ๋ฐฐ์ด ๋ฐ์ดํฐ, Series๋ DataFrame ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ถ ์ ๋ ฅํ ์ ์๋ ๊ฒ์ด๋ค. ๋ฐ์ดํฐ ํ๋ ์์ ๊ตฌ์กฐ์์ ์ธ๋ก์ถ ๋ผ๋ฒจ์ index, ๊ฐ๋ก์ถ ๋ผ๋ฒจ์ columns, ์ด ๋์ ์ ์ธํ ๋ฐ์ดํฐ๋ค์ values๋ผ๊ณ ํ๋ค. ์ด ๊ตฌ์กฐ๋ฅผ ์์ฑํ ๋ ์ฃผ์ํ ์ ์ ํ์ ๊ฐ์์ ์ด์ ๊ฐ์๊ฐ ์ ๋ถ ์ผ์นํด์ผ ํ๋ ๊ฒ์ด๋ค.
index์ columns๋ ์ ๋ ฅํ์ง ์์ ๊ฒฝ์ฐ, ์๋์ผ๋ก 0์ด ํ์๋๋ค.
- Numpy์ ๋ฐฐ์ด ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํด ์์ฑํ ๋ฐ์ดํฐ ํ๋ ์
- ๋์ ๋๋ฆฌ ํ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํด ์์ฑํ ๋ฐ์ดํฐ ํ๋ ์
- Series๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํด ์์ฑํ ๋ฐ์ดํฐ ํ๋ ์
- Series์ ๋ง์ฐฌ๊ฐ์ง๋ก index์ value๋ฅผ ๋ถ๋ฆฌํด์ ๊ฐ์ ธ์ฌ ์ ์๋ค.
3. ๋งทํ๋กญ๋ฆฝ(Matplotlib)
matplotlib์ ๋ฐ์ดํฐ ๋ถ์ ํ ํจ๊ณผ์ ์ธ ์๊ฐํ๋ฅผ ์ํด ๋ง์ด ์ฌ์ฉํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด
2์ฐจ์ ์ ๊ทธ๋ํ(plot), ์ฐ์ ๋(scatter plot), ๋ง๋ ๊ทธ๋ํ(bar chart), ํ์คํ ๊ทธ๋จ(histogram), ํ์ด ๊ทธ๋ํ(pie chart)๋ฑ์ ๊ทธ๋ฆด ์ ์๋ค.
- ์ฌ์ฉ๋ฒ
์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋์ ๋ถ๋ฌ์จ๋ค.
import matplotlib.pylot as plt
์ ๊ทธ๋ํ
- ์ฌ์ฉ๋ฒ
์ ๊ทธ๋ํ๋ ์ฃผ๋ก 2์ฐจ์ ์ ๊ทธ๋ํ๋ฅผ ์ฌ์ฉํ๋ค. ํ์์ ๐๐ฝ
plt.plot(x, y, fmt)
์ด๋ x์ y์ ์ํ์ค ๊ธธ์ด๊ฐ ๊ฐ์์ผ ์ ๋๋ก ์ถ๋ ฅ๋๋ค.
x๊ฐ์ ์๋ตํ ์ ์๊ณ , ์๋ตํด์ x๊ฐ์ด ์๋ค๋ฉด 0๋ถํฐ y์ ๊ฐ์๋งํผ 1์ฉ ์ฆ๊ฐํ๋ ๊ฐ์ผ๋ก ์๋ ํ ๋น๋๋ค.
fmt๋ format string์ผ๋ก, ๋ค์ํ ํ์์ผ๋ก ๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆด ์ ์๋ ์ต์ ์ด๋ค.
(* plt.plot(data)๋ฅผ ์ฌ์ฉํ๋ฉด ๊ทธ๋ํ ๊ฐ์ฒด์ ์ ๋ณด๋ฅผ ์ถ๋ ฅํด์ฃผ๊ณ ,
* plt.show()๋ฅผ ์ฌ์ฉํ๋ฉด ๊ทธ๋ํ๋ง ๊น๋ํ๊ฒ ๋ณด์ฌ์ค๋ค.)
- 2์ฐจ์ ์ ๊ทธ๋ํ
๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ณ , ์ธ์๋ก ์ ๋ ฅํ๋ค.
x๊ฐ์ด ์์ด์ ์๋์ผ๋ก ์๋์ฒ๋ผ ์๋์ผ๋ก ์์ฑ๋๋ค.
๊ทธ๋ ๋ค๋ฉด, x๊ฐ๊ณผ y๊ฐ์ด ๋ชจ๋ ์๋ ๊ทธ๋ํ๋ ์ด๋จ๊น?
๋ํ์ด๋ฅผ ๋ถ๋ฌ์ค๊ณ , x ๋ฐ์ดํฐ์ y=2x^2 ์์์ ์ด์ฉํ y๋ฐ์ดํฐ๋ฅผ ์์ฑํ๋ค.
x์๋ -4.5์์ 5๊น์ง 0.5์ฉ ์ฆ๊ฐํ๋ ๋ฐฐ์ด์ ์ง์ ํด์ฃผ๊ณ
y์๋ 2x^2 ์์์ ๋ฃ์ ๋ฐฐ์ด์ ์ง์ ํ๋ค.
์ด๋ฅผ ์ถ๋ ฅํ๊ธฐ ์ํด ๋ฆฌ์คํธ ํํ๋ก ๊ฐ์ธ์ฃผ๊ณ ๋ณด์ฌ์ค๋ค.
- ํ๋์ ์ฐฝ์ ์ฌ๋ฌ ๊ทธ๋ํ
x๊ฐ์ ๊ณ ์ ํด์ฃผ๊ณ ๋ณํ๋ y๊ฐ์ ์ง์ ํด์ ์ฌ๋ฌ ๊ทธ๋ํ๊ฐ ํ๋์ ์ฐฝ์ ๋ณด์ด๋๋ก ํ์๋ค.
- ๊ทธ๋ํ ์ฐฝ์ ์ฌ๋ฌ๊ฐ์ ํ์ ๊ทธ๋ํ ์์ญ์ผ๋ก ๋๋ ๊ทธ๋ฆฌ๊ธฐ
plt.subplot() ์ ํ์ ๊ทธ๋ํ๋ฅผ ์์ฑํ๋ ์ฝ๋๋ค.
x์ 0๋ถํฐ 10๊น์ง 0.1์ฉ ์ฆ๊ฐํ๋ ๋ฐฐ์ด๊ณผ y์ ๊ฐ ์์์ ๋ฃ์ด์ 2x2ํ๋ ฌ๋ก ๋ ํ์ ๊ทธ๋ํ์์ p์ ๋ฐ๋ผ
์์น๋ฅผ ์ง์ ํด์ฃผ์๋ค. 1์ ์ผ์ชฝ ์๋จ, 2๋ ์ค๋ฅธ์ชฝ ์๋จ, 3์ ์ผ์ชฝ ํ๋จ, 4๋ ์ค๋ฅธ์ชฝ ํ๋จ์ด๋ค.
- ์์ฑ๋ ๊ทธ๋ํ ๊พธ๋ฏธ๊ธฐ
x์ 0๋ถํฐ 5๊น์ง 1์ฉ ์ฆ๊ฐํ๋ ๋ฐฐ์ด์ ์์ฑํด์ฃผ๊ณ ๋ง์ปค๋ชจ์, ์ ์คํ์ผ, ์ปฌ๋ฌ๋ฅผ ๊ฐ ๊ฐ์ ์ค์ ํด์ค๋ค.
๋ฒ๋ก๋ legendํจ์๋ฅผ ์ฌ์ฉํด ๋ํ๋ด์ฃผ๋ฉฐ ๊ทธ ์์น๋ loc๋ก ์ง์ ํด์ค๋ค.
xlabel, ylabel์๋ ๊ฐ ์ถ์ ์ ๋ํ๋ด์ฃผ๋ ์ด๋ฆ์ ๋ฃ์ด์ค๋ค.
title์๋ ๊ทธ๋ํ์ ์ ๋ชฉ์ ์ ์ ํด์ค๋ค.
grid์ True๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ๊ทธ๋ฆฌ๋๋ฅผ ์์ฑํ๊ณ False๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ๊ทธ๋ฆฌ๋๋ฅผ ์์ฑํ์ง ์๋๋ค.
์ฐ์ ๋
-์ฌ์ฉ๋ฒ
๋ณดํต ์๋์ ๊ฐ์ ํ์์ผ๋ก ์ฐ์ ๋๋ฅผ ๋ํ๋ธ๋ค. ๐๐ฝ
plt.scatter(x, y [,s=size], c=colors, marker='marker_string', alpha=alpha_f])
s: ๋ง์ปค์ ํฌ๊ธฐ, c: ๋ง์ปค์ ์ปฌ๋ฌ, marker: ๋ชจ์, alpha๋ ํฌ๋ช ๋๋ฅผ ์ ์ ํด์ค๋ค.
์ต์ ์ ์ง์ ํ์ง ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ s=36, c='b(blue)', marker='o', alpha=1 ์ด๋ ๊ฒ ์ง์ ๋๋ค.
s์ต์ ์ ํ๋์ ์ซ์๋ง ์ ๋ ฅํ๋ฉด ๋ชจ๋ ๋ง์ปค์ ๋์ผํ ์ฌ์ด์ฆ ์ ์ฉ, ๋ฐฐ์ด์ด๋ ์ํ์ค๋ฅผ ์ ๋ ฅํ๋ฉด ๋ง์ปค๋ง๋ค
ํฌ๊ธฐ๋ฅผ ๋ค๋ฅด๊ฒ ์ ์ฉํ๋ค.
c์ต์ ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ํ๋์ ์ปฌ๋ฌ๋ง ์ ๋ ฅํ๋ฉด ๋ชจ๋ ๋ง์ปค์ ๋์ผํ ์ปฌ๋ฌ๋ฅผ ์ ์ฉํ๊ณ ,
์ํ์ค๋ก ์ ๋ ฅํ๋ฉด ๋ง์ปค๋ง๋ค ์ปฌ๋ฌ๊ฐ ๋ฌ๋ผ์ง๋ค.
alpha๋ ํฌ๋ช ๋๋ฅผ ์ง์ ํ ์ ์๊ณ , 0์์ 1์ฌ์ด ๋ฒ์์ ์ค์๋ฅผ ์ ๋ ฅํ ์ ์๋ค. 0์ ๊ฐ๊น์ธ์๋ก ์์ ํฌ๋ช ํ๊ณ
1์ ๊ฐ๊น์ธ ์๋ก ์์ ๋ถํฌ๋ช ํด์ง๋ค.
๋ ๊ฐ์ง์ ์์๋ฅผ ๊ฐ์ ธ์๋ดค๋ค.
์ฒซ๋ฒ์งธ ์์๋ ์์์ ์๊ธฐํ ๋๋คํจ์๋ฅผ ์ฌ์ฉํด ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๊ณ ์ฐ์ ๋ ๊ทธ๋ํ๋ก ๋ํ๋ธ ๊ฒ์ด๋ค.
๋๋ฒ์งธ ์์๋ 2017 ํต๊ณ์ฒญ ์ฃผ์๋์ ์ธ๊ตฌ๋ฐ๋ ์๋ฃ๋ฅผ ์ฌ์ฉํ๋ค.
์ฃผ์ ๋์ ๋ฆฌ์คํธ๋ฅผ city์ ๋ฃ์ด์ฃผ๊ณ x, y๊ฐ์ ์๋์ ๊ฒฝ๋๋ฅผ ๊ฐ๊ฐ ๋ฃ์ด์ค๋ค.
์ธ๊ตฌ ๋ฐ๋๋ pop_den์ผ๋ก ๋ณ์๋ฅผ ์ง์ ํด์ฃผ์๋ค.
size = np.array(ํด๋น ๋ณ์) * ์ํ๋ ์ฌ์ด์ฆ๋ก ๋ง์ปค ํฌ๊ธฐ ์ง์ .
colors = red, green, blue, cyan, magenta, white, yellow๋ก ๋ง์ปค ์ปฌ๋ฌ ์ง์ .
plt.scatter(x, y, ์ฌ์ด์ฆ, ์ปฌ๋ฌ, ํฌ๋ช ๋)๋ก ์ฐ์ ๋ ๊ทธ๋ํ ์์ฑ.
for๋ฌธ์ ์ฌ์ฉํด ํด๋น ๊ทธ๋ํ์ ํ ์คํธ๊ฐ ๋ณด์ด๋๋ก ํ์๋ค.
๋ง๋ ๊ทธ๋ํ
๋ง๋ ๊ทธ๋ํ๋ ๋ง๋์ ๊ธธ์ด๊ฐ ๊ฐ ๋ฐ์ดํฐ์ ํฌ๊ธฐ๋ฅผ ์๋ฏธํ๋ฉฐ, plt.bar()๋ก ๋ง๋์ฐจํธ๋ฅผ ๋ณด์ฌ์ค ์ ์๋ค.
-์ฌ์ฉ๋ฒ
- ๊ธฐ๋ณธ ๋ง๋ ๊ทธ๋ํ
- ๋ง๋ ๊ทธ๋ํ ๊พธ๋ฏธ๊ธฐ
- ๋ง๋ ๊ทธ๋ํ ๊พธ๋ฏธ๊ธฐ(๊ฐ๋ก ๋ง๋ ๊ทธ๋ํ)๋ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ํ๋์ ์ฐฝ์ ๋ณด์ด๋ ๊ทธ๋ํ
ํ์คํ ๊ทธ๋จ
๋ฐ์ดํฐ๋ฅผ ์ ํด์ง ๊ฐ๊ฒฉ์ผ๋ก ๋๋ ํ ๊ทธ ๊ฐ๊ฒฉ ์์ ๋ค์ด๊ฐ ๋ฐ์ดํฐ ๊ฐ์๋ฅผ ๋ง๋๋ก ํ์ํ ๊ทธ๋ํ์ด๋ค.
๋ฐ์ดํฐ๊ฐ ์ด๋ค ๋ถํฌ๋ฅผ ๊ฐ๋์ง ๋ณผ ๋ ์ฃผ๋ก ์ด์ฉํ๋ค. ์ฆ, ๋์๋ถํฌํ๋ฅผ ๋ง๋ ๊ทธ๋ํ๋ก ์๊ฐํํ ๊ฒ์ด๋ค.
โจ๋์๋ถํฌํ๋ฅผ ์ดํดํ๊ธฐ ์ํด์ ์์์ผ ํ๋ ์ฉ์ดโจ
๋ณ๋(variable): ์๋ฃ๋ฅผ ์ธก์ ํด ์ซ์๋ก ํ์ํ ๊ฒ(ex: ์ ์, ํค, ๋ชธ๋ฌต๊ฒ, ํ๋งค๋ ๋ฑ)
๊ณ๊ธ(class): ๋ณ๋์ ์ ํด์ง ๊ฐ๊ฒฉ์ผ๋ก ๋๋ ๊ตฌ๊ฐ(ex: ์ํ์ ์ 70~80, 80~90, 90~100)
๊ณ๊ธ์ ๊ฐ๊ฒฉ(class width): ๊ณ๊ธ์ ๋๋ ํฌ๊ธฐ(์ ๊ณ๊ธ ๊ฐ๊ฒฉ์ 10)
๋์(frequency): ๋๋ ์ง ๊ณ๊ธ์ ์ํ๋ ๋ณ๋์ ์(ex: ๊ฐ ๊ณ๊ธ์์ ๋ฐ์ํ ์)
๋์ ๋ถํฌํ(frequency distribution table): ๊ณ๊ธ์ ๋์๋ฅผ ํ์ํ ํ
- ์ฌ์ฉ๋ฒ
ํ์คํ ๊ทธ๋จ์ ์์ฑํ๊ธฐ ์ ๋์๋ถํฌํ๋ฅผ ์์ฑํด์ผ ํ๋๋ฐ
1. ๋ณ๋ ์์ฑ
ํ์ 20๋ช ์ ์์ด์ํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ดํฐ๋ก ์์ฑํ๋ค๊ณ ๊ฐ์ ํ๋ค.
80 90 60 65 70 72 73 59 89 95 92 90 100 76 86 80 85 91 95 88
2. ๊ณ๊ธ ๊ฐ๊ฒฉ ์ค์ ๋ฐ ๊ณ๊ธ ์์ฑ
๋ณ๋ ์ค ๊ฐ์ฅ ์์ ์ซ์๊ฐ 60, ๊ฐ์ฅ ํฐ ์ซ์๊ฐ 100์ด๋ฏ๋ก
์ผ์ ํ ๊ฐ๊ฒฉ์ ๋ฐ๋ก ์ค์ ํ๋ค. (๋๋ 10์ผ๋ก ์ค์ ) 4๊ฐ์ ๊ณ๊ธ์ด ์ค์ ๋๋ค.
3. ๊ณ๊ธ๋ณ ๋์ ํ์ธ ๋ฐ ๋์๋ถํฌํ ๋ง๋ค๊ธฐ
๊ฐ ๊ณ๊ธ์ ๋ช ๊ฐ์ ๋ณ๋์ด ๋ค์ด์๋์ง ํ์ธํด์ ๊ณ๊ธ๋ณ๋ก ๋์๋ฅผ ๊ตฌํ๊ณ ์ด๊ฒ์ผ๋ก ๋์ ๋ถํฌํ๋ฅผ ๋ง๋ ๋ค.
์ถ๊ฐ์ ์ผ๋ก ๊ฐ ๋์๋ฅผ ๋์ ๋๊ฒ ์๊ฐํํ๊ธฐ ์ํด ๋งํฌ๋ก ๋์๋ฅผ ํ์ํ ์๋ ์๋ค.
1~3์ ๊ณผ์ ์ ๊ฑฐ์น๊ณ
์ฃผ๋ก ์๋์ ํ์์ผ๋ก ํ์คํ ๊ทธ๋จ์ ๋ํ๋ธ๋ค. ๐๐ฝ
plt.hist(x, [,bins = bins_n ํน์ 'auto'])
x๋ ๋ณ๋ ๋ฐ์ดํฐ, ์ต์ bins: ๊ณ๊ธ์ ๊ฐ์,์ ๋ ฅํ์ง ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ 10์ด๊ณ , bins = 'auto'๊ฐ ์ ๋ ฅ๋ ๊ฒฝ์ฐ
x์ ๋ง๊ฒ ์๋์ผ๋ก ๊ฐ์ด ๋ค์ด๊ฐ๋ค.
ํ์ด ๊ทธ๋ํ
์ ์ฒด ๋ฐ์ดํฐ์์ ๊ฐ ํญ๋ชฉ์ด ์ฐจ์งํ ๋น์จ์ ๋ณด๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ ๊ทธ๋ํ์ด๋ฉฐ, ๊ฐ ์กฐ๊ฐ๋ค์ ๊ฐ ํญ๋ชฉ์ ๋น๋กํ๋ ํฌ๊ธฐ๋ค.
ํ์ด๊ทธ๋ํ ๊ทธ๋ฆฌ๋ ํ์๐๐ฝ
plt.pie(x, [,labels = label_seq, autopct='๋น์จ ํ์ ํ์(ex: %0.1f)', shadow = False(๊ธฐ๋ณธ) ํน์ True,
explode = explode_seq, counterclock = True(๊ธฐ๋ณธ) ํน์ Fasle, startangle = ๊ฐ๋ (๊ธฐ๋ณธ์ 0) ])
x๋ ๋ฐฐ์ด์ด๋ ์ํ์ค ํํ์ ๋ฐ์ดํฐ๋ค. pie()๋ x๋ฅผ ์ ๋ ฅํ๋ฉด x์ ๊ฐ ์์๊ฐ ์ ์ฒด์์ ์ฐจ์งํ๋ ๋น์จ์
๊ณ์ฐํ๊ณ ๊ทธ ๋น์จ์ ๋ง๊ฒ ๋ถ์ฑ๊ผด ๋ถ๋ถ์ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ ํด์ ํ์ด ๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆฐ๋ค. x์ธ์๋ ๋ค์ํ ์ต์ ์ ์ถ๊ฐํ ์ ์๋ค.
โจ์ฃผ์ ์ต์ โจ
labels: x ๋ฐ์ดํฐ ํญ๋ชฉ์ ์์ ๊ฐ์ ๋ฌธ์์ด ์ํ์ค(๋ฆฌ์คํธ, ํํ)๋ฅผ ์ง์ ํด ํ์ด ๊ทธ๋ํ์ ๊ฐ ๋ถ์ฑ ๋ถ๋ถ์ ๋ฌธ์์ด์ ํ์.
autopct: ๊ฐ ๋ถ์ฑ ๋ถ๋ถ์ ํญ๋ชฉ์ ๋น์จ์ด ํ์๋๋ ์ซ์์ ํ์์ ์ง์ ํ๋ค.
(ex: '%0.1f'๊ฐ ์ ๋ ฅ๋๋ฉด ์์์ ์ฒซ์งธ์๋ฆฌ ๊น์ง ํ์.'%0.0f'๊ฐ ์ ๋ ฅ๋๋ฉด ์ ์๋ง ํ์, ์ซ์๋ฟ ์๋๋ผ '%'๋ฅผ ์ถ๊ฐํ๊ณ ์ถ์ ๊ฒฝ์ฐ'%0.1f%%' ์ ๊ฐ์ด ์ ๋ ฅ.
shadow: ๊ทธ๋ฆผ์ ํจ๊ณผ๋ฅผ ์ง์ ํ๋ ๊ฒ, ๊ธฐ๋ณธ๊ฐ์ ํจ๊ณผ๋ฅผ ์ง์ ํ์ง ์๋ False๋ค.
explode: ๋ถ์ฑ ๋ถ๋ถ์ด ์์์ ๋์ถ๋๋ ํจ๊ณผ๋ฅผ ์ฃผ์ด ํน์ ํญ๋ชฉ์ ๊ฐ์กฐํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค. x ๋ฐ์ดํฐ ํญ๋ชฉ์ ์์ ๊ฐ์ ์ํ์ค(๋ฆฌ์คํธ, ํํ) ๋ฐ์ดํฐ๋ก ์ง์ ํ๋ค. ๊ธฐ๋ณธ ์ค์ ์ ๊ฐ์กฐํจ๊ณผ๊ฐ ์๋ค.
counterclock: x ๋ฐ์ดํฐ๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ถ์ฑ๊ผด์ ๋ฐฉํฅ์ด ๋ฐ์๊ณ ๋ฐฉํฅ(True)์ธ์ง ์๊ณ๋ฐฉํฅ(False)์ธ์ง ์ง์ ํ๋ค.
๊ธฐ๋ณธ๊ฐ์ True๋ก ๋ฐ์๊ณ๋ฐฉํฅ์ด๋ค.
startangle: ์ ์ผ ์ฒ์ ๋ถ์ฑ๊ผด์ด ๊ทธ๋ ค์ง๋ ๊ฐ๋๋ก x์ถ์ ์ค์ฌ์ผ๋ก ๋ฐ์๊ณ๋ฐฉํฅ์ผ๋ก ์ฆ๊ฐํ๋ค. ๊ธฐ๋ณธ๊ฐ์ 0์ด๋ค.
๋ค๋ฅธ ๊ทธ๋ํ๋ค๊ณผ ๋ฌ๋ฆฌ ํ์ด๊ทธ๋ํ๋ ๊ฐ๋ก, ์ธ๋ก ๋น์จ์ด 1:1์ด์ด์ผ ์ ๋๋ก ๋ณด์ด๊ธฐ ๋๋ฌธ์ ๊ทธ๋ํ์ ๋๋น์ ๋์ด๋ฅผ ๋ฏธ๋ฆฌ ์ง์ ํด ๋น์จ์ ์กฐ์ ํ ์ ์๋ค. ๐๐ฝ plt.figure(figsize = (w, h))
w(width), h(height)์ด๋ฉฐ ๋จ์๋ inch๋ค. figure(figsize = (w, h))๋ฅผ ์ด์ฉํด w, h๊ฐ์ ์ง์ ํ์ง ์์ผ๋ฉด
(w, h)์ ๊ธฐ๋ณธ๊ฐ์ (6, 4)์ด๋ค. w,h๋ฅผ ๊ฐ์ ๊ฐ์ผ๋ก ์ง์ ํ๋ฉด ๊ทธ๋ํ์ ๋น์จ์ด 1:1์ด ๋๋ค.
์ด๋ฑํ์, ์คํ์, ๊ณ ๋ฑํ์์ ํ์ ์๋ฅผ ์์๋ก ์ ์ ํด ํ์ด๊ทธ๋ํ๋ก ๋ง๋ค์ด ๋ณด์๋ค.
startangle, counterclock์ ์ง์ ํ์ง ์์๊ธฐ ๋๋ฌธ์ ์๋์ ์ผ๋ก ๊ทธ๋ํ ํญ๋ชฉ์ด ๋ฐ์๊ณ๋ฐฉํฅ(์ผ์ชฝ)์ผ๋ก ๊ทธ๋ ค์ง๋ค.
์์ ๋ฌ๋ฆฌ startangle๊ณผ counterclock์ ์ฌ์ฉํด ๋ถ์ฑ๊ผด์ด 90๋, ์๊ณ๋ฐฉํฅ(False)์ผ๋ก ํฅํ๋๋ก ํ์๊ณ ,
explode๋ฅผ ๋ณ๋ ๋ฐ์ดํฐ ์(student ์: 3)์ ๊ฐ๋๋ก ๋ง์ถ๊ณ ๋๋ณด์ด๊ฒ ๋ง๋ค๊ณ ์ถ์ ํญ๋ชฉ์ ๊ฐ๋ง ์ ์ ํ ์ฆ๊ฐ์์ผ์ฃผ์๋ค.
์ด๋ ๊ฒ ๋ณด๋ ์์ ๊ณผ ๋น์ทํ ํจ์๋ค์ด ๊ต์ฅํ ๋ง์๋ฐ ๊ฐ์ด ๊ณต๋ถํ๋ฉด RPA๋ ๋ฐ์ดํฐ ๋ถ์ ์๊ฐํ์
๋์์ด ์ ๋ ๊ฑฐ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ ๋ค. ๊ฐ๋ฐ์๊ฐ ๋๋ ๊ทธ ๋ ๊น์ง ํ์ดํ !๐ฅ
'IT ๐ป > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python] ๋ฆฌ์คํธ, ํํ, ์ธํธ ํ์ ๋ณํํ๊ธฐ (0) | 2022.03.01 |
---|---|
[Python] ์๋ฃํ_๋์ ๋๋ฆฌ ๊ฐ๋ ๋ฐ ํจ์ ํ์ฉ๋ฒ (0) | 2022.03.01 |
[Python] ์๋ฃํ_์ธํธ ๊ฐ๋ ๋ฐ ํจ์ ํ์ฉ๋ฒ (0) | 2022.03.01 |
[Python] ์๋ฃํ_ํํ ๊ฐ๋ ๋ฐ ํจ์ ํ์ฉ๋ฒ (0) | 2022.03.01 |
[Python] ์๋ฃํ_๋ฆฌ์คํธ ๊ฐ๋ ๋ฐ ํจ์ ํ์ฉ๋ฒ (0) | 2022.02.28 |