์์นํ ์๋ฃ๋ ๋ง ๊ทธ๋๋ก ํ์์ ์ซ์๋ก ๋ํ๋ ์๋ ์๋ฃ๋ค์ ๋ปํ๋ค.

์๋ฃ๋ค์ ์ ํ ์์น๊ฐ๋ค์ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ๊ณ ์ ํ ๋, ์ฐ์ ์ ์ผ๋ก ์์ฝ์ ํด์ฃผ๋ฉด ๋ณด๋ค ์ฝ๊ฒ ๋ฐ์ดํฐ๋ค์ ์ ๊ทผํ๊ณ , ๋ถ์ํ๊ธฐ๋ ์ฝ๋ค.
1. ํ๊ท ๊ณ์ฐ ํจ์
์ฒซ์งธ๋ ๋๊ตฌ๋ ์ ์๊ณ ์๋ ํ๊ท ์ด๋ค. numpy ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ np.mean ํจ์๋ ํ๊ท ์ ๊ณ์ฐํ์ฌ ๋ฆฌํด์์ผ์ค๋ค.
mean = np.mean(array)
์ ๋ ฅ์ผ๋ก๋ ๋ฐ๋ก ์ฐ๋ฆฌ๊ฐ ์ ์ํด์ค numpy array๋ง์ ๋ฐ์ ์ ์๋ค. ์ผ๋ฐ์ ์ธ array๋ก ๋ฐฐ์ด์ ์ ์ํด์ฃผ๋ฉด error๊ฐ ๋จ๋ ์กฐ์ฌํด์ค์ผ ํ ๊ฒ ๊ฐ๋ค.
import numpy as np
coffee = np.array([202,177,121,148,89,121,137,158])
"""
1. ํ๊ท ๊ณ์ฐ
"""
cf_mean = np.mean(coffee)
# ์์์ ๋์งธ ์๋ฆฌ๊น์ง ๋ฐ์ฌ๋ฆผํ์ฌ ์ถ๋ ฅํฉ๋๋ค.
print("Mean :", round(cf_mean,2))
์ฐ์ , numpy์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ import ํด์ค๊ณ , ์ด๋ฅผ 'np'๋ผ๋ ์ฝ์๋ก ์ฌ์ฉํ๊ธฐ๋ก ์ ์ํด์ค ๋ค์ ์นดํ๋ณ ์๋ฉ๋ฆฌ์นด๋ ธ์ ์นดํ์ธ ํจ๋์ด ๊ฐ์ผ๋ก ๋ค์ด๊ฐ ์๋ numpy array๋ฅผ ์ ์ํ๋ค.
๊ทธ ํ์, ์์ ํ๊ท ๊ณ์ฐ ํจ์๋ก ํ๊ท ๊ฐ์ cf_mean์ ์ ์ฅํ ํ์, ๋ฐ์ฌ๋ฆผํ๋ round ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๋ ฅํ๋ค.
์์์ ์ n๋ฒ์งธ ๊น์ง๋ง ํํํ๊ณ ๋ฐ์ฌ๋ฆผ์ ํ๊ณ ์ถ์๋, round ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด๋๋ค.
round(์ค์, n)
์์์๋ n์ 2์ ๊ฐ์ ๋ฃ์ด์ฃผ์์ผ๋, ์์์ ๋์งธ์ง๋ฆฌ๊น์ง ๋ฐ์ฌ๋ฆผํด์ ์ถ๋ ฅํด์ฃผ๊ฒ ๋ค๋ ๋ป์ด ๋๊ฒ ๋ค.
2. ํ์คํธ์ฐจ ๊ณ์ฐ ํจ์
from statistics import stdev
import numpy as np
coffee = np.array([202,177,121,148,89,121,137,158])
"""
1. ํ์คํธ์ฐจ ๊ณ์ฐ
"""
cf_std = stdev(coffee)
# ์์์ ๋์งธ ์๋ฆฌ๊น์ง ๋ฐ์ฌ๋ฆผํ์ฌ ์ถ๋ ฅํฉ๋๋ค.
print("Sample std.Dev : ", round(cf_std,2))
๋๋ฒ์งธ๋ ํ์คํธ์ฐจ๋ฅผ ๊ณ์ฐํ๋ ํจ์์ด๋ค.
์ฌ์ค ํ์คํธ์ฐจ์ ๊ฐ๋ ์ ์ด๊ณผ์์ด๊ธฐ์ ๋๊ตฌ๋ณด๋ค ์ ์๊ณ ์์์ง๋ง, ์ ํธ์ฐจ์ ์ ๊ณฑ์ ํ๊ท ์ ์ ๊ณฑ๊ทผ๊น์ง ์์ฐ๋ ์ด์ํ ์ง์ ํ๋์ง๋ ์ด๋ฒ์ ์๊ฒ ๋์๋ค.
ํ์ ๋์์๋ ์์น๊ฐ๊ณผ ๋จ์๋ฅผ ๋์ผํ๊ฒ ๋ง์ถ์ด์ฃผ๊ธฐ ์ํด ์ ๊ณฑ๊ทผ์ ์์์ค๊ฑฐ๋ผ๊ณ ํ๋ค. ์ฐธ ์ ๊ธฐํ๋ค.
์์ ์ฝ๋๋ธ๋ญ์ ๋ณด๋ฉด, ์ฐ๋ฆฌ๋ ํ์คํธ์ฐจ ํจ์๋ง์ ์ด์ฉํ ๊ฒ์ด๊ธฐ์
from statistics import stdev
import statistics as st
from์ด ๋ค์ด๊ฐ ์ฒซ๋ฒ์งธ ๋ฌธ์ฅ์ ์ฌ์ฉํ์ง๋ง, ํ์คํธ์ฐจ์ ๋๋ถ์ด statistics ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ด์ ์ฌ๋ฌ๊ฐ์ง ํจ์๋ค์ ์ฐ๊ณ ์ถ๋ค๋ฉด ๋๋ฒ์งธ ๋ฌธ์ฅ์ฒ๋ผ ์ ์๋ฅผ ํ ํ์,
cf_std = st.stdev(coffee)
๋ผ๊ณ stdev ์์ st๋ฅผ ๋ถ์ฌ์ ํํํด์ฃผ๋ ๊ฒ์ด ๋ ์ข์ ๋ฐฉ๋ฒ ์ผ ๊ฒ ๊ฐ๋ค.
3. ํ์คํ ๊ทธ๋จ
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
coffee = np.array([202,177,121,148,89,121,137,158])
fig, ax = plt.subplots()
"""
1. ํ์คํ ๊ทธ๋จ์ ๊ทธ๋ฆฌ๋ ์ฝ๋ ์์ฑํ๊ธฐ
"""
plt.hist(coffee, bins=5)
์ด๋ฒ์๋ importํด์ผ ํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ 3๊ฐ๋ ๋๋ค. ์ถ๊ฐ๋ ๊ฒ์ matplotlib.pyplot ์ธ๋ฐ, ์ด๋
ํ์ด์ฌ์์ ๋ฐ์ดํ๋ฅผ ์ฐจํธ๋ ํ๋กฏ(Plot)์ผ๋ก ๊ทธ๋ ค์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํจํค์ง๋ก์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋
๋ฐ์ดํ ์๊ฐํ(Data Visualization) ํจํค์ง๋ก ์๋ ค์ ธ ์๋ค.
fig, ax = plt.subplots() ๋ ์ฒซ ๋ฒ์งธ ํฌ์คํธ์ ์ค๋ช ํ ๋ฌธ์ฅ์ ๊ทธ๋๋ก ์ฌ์ฉํ๊ณ ,
plt.hist(coffee, bins=5) ๋ numpy array์ ์๋ ๊ฐ๋ค์ ์ด์ฉํด ํ์คํ ๊ทธ๋จ์ ๊ทธ๋ฆฌ๋,
bins ์์ ์ ํ ์ซ์๋ ์ฐ๋ฆฌ๊ฐ ์ ์ํ ๊ณ๊ธ์ ์๋ฅผ ์๋ฏธํ๋ค.
์๋ ๋ ๊ทธ๋ฆผ์ bins ๊ฐ์ด 3์ผ ๋์ 5์ผ ๋๋ฅผ ๋น๊ตํ ๊ฒ์ด๋ค.


์๋ฃ๋ค์ ๋ ์ธ๋ถํํ๊ณ ์ถ์ ๋, bins์ ๊ฐ์ ํฌ๊ฒ ์กฐ์ ํ์ฌ ์ฌ๋ฌ ๊ณ๊ธ์ ๊ฐ์ง ํ์คํ ๊ทธ๋จ์ ๋ง๋ค์ด์ฃผ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค.
์ค๋์ ์ฌ๋ฌ๊ฐ์ง ์์นํ ์๋ฃ๋ค์ ์์ฝํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ฐฐ์๋ดค๋ค.
๋ค์์๊ฐ์๋ ๋จธ์ ๋ฌ๋์ ํ์ํ ๋ฐ์ดํฐ ํํ๋ฅผ ๋ง๋ค๊ธฐ ์ํ ๋ค์ํ ์ ์ฒ๋ฆฌ ๋ฐฉ์์ ๋ํด ๊ณต๋ถํด๋ณด๊ฒ ๋ค!๐
'๐ ์ธ๊ณต์ง๋ฅ, ๋จธ์ ๋ฌ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [๋จธ์ ๋ฌ๋ ๊ธฐ์ด] ์ง๋ํ์ต - ํ๊ท (2) | 2022.09.07 |
|---|---|
| [๋จธ์ ๋ฌ๋ ๊ธฐ์ด] ๋ฐ์ดํฐ ๋ถ๋ฆฌํ๊ธฐ (0) | 2022.09.06 |
| [๋จธ์ ๋ฌ๋ ๊ธฐ์ด] ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌํ๊ธฐ (0) | 2022.08.30 |
| [๋จธ์ ๋ฌ๋ ๊ธฐ์ด] ์๋ฃ ํํ์ ์ดํด(๋ฒ์ฃผํ ์๋ฃ_๋์๋ถํฌํ) (0) | 2022.08.05 |