πŸ“’ Today I Learn/🐍 Python

톡계야 λ†€μž (1) ν‘œλ³ΈλΆ„ν¬, 신뒰ꡬ간, μ •κ·œλΆ„ν¬

ny:D 2024. 6. 3. 16:35

240603 Today I Learn

λ°μ΄ν„°μ˜ μ’…λ₯˜

데이터 μ’…λ₯˜ λΆ„λ₯˜

μˆ˜μΉ˜ν˜• 자료 - 숫자λ₯Ό μ΄μš©ν•΄ ν‘œν˜„ν•  μˆ˜ μžˆλŠ” λ°μ΄ν„°

  • μ—°μ†ν˜• : 일정 λ²”μœ„ μ•ˆμ—μ„œ μ–΄λ–€ 값이든 μ·¨ν•  수 μžˆλŠ” 데이터
    → 체쀑, μ‹ μž₯
  • μ΄μ‚°ν˜• : νšŸμˆ˜μ™€ 값은 μ •μˆ˜ν˜• κ°’λ§Œ μ·¨ν•  수 μžˆλŠ” 데이터(μ†Œμˆ˜μ μ΄ μ˜λ―Έκ°€ μ—†μŒ)
    → μ‚¬κ³ κ±΄μˆ˜, 일 λ°©λ¬Έμžμˆ˜

λ²”μ£Όν˜• 자료 - κ°€λŠ₯ν•œ λ²”μ£Ό μ•ˆμ˜ κ°’λ§Œμ„ μ·¨ν•˜λŠ” λ°μ΄ν„°

  • μˆœμœ„ν˜•(μˆœμ„œν˜•) : κ°’λ“€ μ‚¬μ΄μ— λΆ„λͺ…ν•œ μˆœμœ„κ°€ μžˆλŠ” λ°μ΄ν„° 
    → λ“±μˆ˜
  • λͺ…λͺ©ν˜• : κ°’λ“€ 사이에 μˆœμœ„κ°€ μ—†λŠ” 데이터
    → λ‚˜λΌ, λ„μ‹œ, ν˜ˆμ•‘ν˜•, 성별, 성곡여뢀, MBTI
    • μ΄μ§„ν˜• : λ‘κ°œμ˜ κ°’λ§Œμ„ κ°€μ§€λŠ” λ²”μ£Όν˜• 데이터 
      → Y/N, T/F, M/F

편차, λΆ„μ‚°, ν‘œμ€€νŽΈμ°¨, ν‘œλ³ΈλΆ„ν¬

편차

πŸ’‘ 편차
κ°κ°€μ˜ κ°’μ—μ„œ 평균을 λΊ€ κ°’μœΌλ‘œ, ν•΄λ‹Ή 값이 ν‰κ· μœΌλ‘œλΆ€ν„° μ–Όλ§ˆλ‚˜ λ–¨μ–΄μ Έ μžˆλŠ”μ§€λ₯Ό μ˜λ―Έν•œλ‹€.

  • μ„Έ ν•™μƒμ˜ μ˜μ–΄μ μˆ˜ 평균은 60점이고 A,B,C 학생은 각각 30,-10,-20μ΄λΌλŠ” 편차λ₯Ό κ°€μ§€κ³  μžˆλ‹€.
  • 편차의 합은 0 (30-10-20 = 0)이닀.
    → μ΄λ ‡κ²Œ νŽΈμ°¨λŠ” μ„œλ‘œ 상쇄 λ˜λ―€λ‘œ 뢄포λ₯Ό μ •ν™•νžˆ νŒŒμ•…ν•  수 μ—†λ‹€. λ”°λΌμ„œ μš°λ¦¬λŠ” 뢄산을 μ‚¬μš©ν•œλ‹€.

λΆ„μ‚°, ν‘œμ€€νŽΈμ°¨

πŸ’‘ λΆ„μ‚°
편차 μ œκ³±ν•©μ˜ ν‰κ· μœΌλ‘œ, 편차의 합이 0으둜 λ‚˜μ˜€λŠ” 것을 λ°©μ§€ν•˜κΈ° μœ„ν•΄ μƒμ„±λœ κ°œλ…μ΄λ‹€.

  • A, B, C μ„Έ ν•™μƒμ˜ 편차λ₯Ό μ œκ³±ν•˜λ©΄ 각각 900, 100, 400이 λœλ‹€. 
  • 이 경우 편차의 합을 ν•™μƒμˆ˜λ‘œ λ‚˜λˆ μ€€ 것이 뢄산이 되고, 뢄산은 1400/3 = 466 이 λœλ‹€.
    → 편차λ₯Ό μ œκ³±ν•˜λ©΄ 편차의 합이 μƒμ‡„λ˜λŠ” 문제λ₯Ό ν•΄κ²°ν•  수 μžˆμ§€λ§Œ, 편차λ₯Ό μ œκ³±ν–ˆκΈ° λ•Œλ¬Έμ— κ·Έ λ‹¨μœ„κ°€ λ‹¬λΌμ§€κ²Œ λ˜μ—ˆλ‹€. λ”°λΌμ„œ 이λ₯Ό λ³΄μ •ν•˜κΈ° μœ„ν•΄ 뢄산에 μ œκ³±κ·Όμ„ μ”Œμš΄ ν‘œμ€€νŽΈμ°¨λ₯Ό ν™œμš©ν•œλ‹€.
πŸ’‘ ν‘œμ€€νŽΈμ°¨
뢄산에 μ œκ³±κ·Όμ„ μ”Œμ›Œμ€€ κ°’. μ›λž˜ κ°’μœΌλ‘œ 되돌리기
  • λΆ„μ‚°(466)에 μ œκ³±κ·Όμ„ μ”Œμš°λ©΄ μ•½ 21.6이 되고, 이것을 ν‘œμ€€νŽΈμ°¨λΌκ³  ν•œλ‹€.

ν‘œλ³ΈλΆ„ν¬

πŸ’‘ ν‘œλ³ΈλΆ„ν¬
ν‘œλ³Έμ˜ 뢄포. λͺ¨μ§‘λ‹¨μ—μ„œ μ—¬λŸ¬ ν‘œλ³Έμ„ μΆ”μΆœν•˜κ³  각 ν‘œλ³Έμ˜ 평균을 κ³„μ‚°ν•œλ‹€λ©΄, μ΄λŠ” μ€‘μ‹¬κ·Ήν•œμ •λ¦¬*에 따라 μ •κ·œλΆ„ν¬μ— κ°€κΉŒμ›Œμ§„λ‹€.
* μ€‘μ‹¬κ·Ήν•œμ •λ¦¬ : ν‘œλ³Έ 크기가 μΆ©λΆ„νžˆ 크닀면 μ–΄λ–€ λΆ„ν¬μ—μ„œλ„ ν‘œλ³Έ 평균이 μ •κ·œλΆ„ν¬λ₯Ό λ”°λ₯Έλ‹€λŠ” 것을 의미

μ •κ·œλΆ„ν¬, μ‹ λ’°κ΅¬κ°„

μ •κ·œλΆ„ν¬

  • μ •κ·œ λΆ„ν¬λŠ” 쒌우 λŒ€μΉ­μ˜ ν˜•νƒœμ΄λ©° ν‰κ· μΉ˜μ—μ„œ κ°€μž₯ κ·Έ ν™•λ₯ μ΄ λ†’λ‹€.
  • 곑선은 각 ν™•λ₯ κ°’을 λ‚˜νƒ€λ‚΄λ©°, λͺ¨λ‘ λ”ν•˜λ©΄ 1이 λœλ‹€
  • μ •κ·œλΆ„ν¬λŠ” 평균과 λΆ„μ‚°(퍼진정도)에 따라 λ‹€λ₯Έ ν˜•νƒœλ₯Ό κ°€μ§„λ‹€
  • 평균 0, λΆ„μ‚° 1을 κ°€μ§€λŠ” 경우, 이λ₯Ό ν‘œμ€€μ •κ·œλΆ„ν¬λΌκ³  ν•œλ‹€. (그림의 뢉은색 κ·Έλž˜ν”„)
❓ ν‘œμ€€ μ •κ·œ 뢄포가 μ€‘μš”ν•œ 이유
각각의 κ·Έλž˜ν”„λŠ” 평균과 뢄산값에 따라 λ‹€λ₯΄κ²Œ 그렀질 수 μžˆλ‹€. ν•˜μ§€λ§Œ μ΄λŸ¬ν•œ 경우, ν™•λ₯ μ„ 계산할 λ•Œ 어렀움을 κ²ͺ을 수 μžˆλ‹€. 이λ₯Ό ν†΅μΌν•˜κΈ° μœ„ν•΄ λΆ„ν¬μ˜ 평균과 λΆ„μ‚° 값을 ν†΅μΌν•˜λŠ” ν‘œμ€€ν™” μž‘μ—…μ΄ ν•„μš”ν•˜λ‹€.
- λ¨Έμ‹ λŸ¬λ‹ λͺ¨λΈμ„ λ§Œλ“€ λ•Œ, λ°μ΄ν„°μ˜ λ²”μœ„κ°€ 많이 μ°¨μ΄λ‚˜λŠ” 경우 ν‘œμ€€ν™”κ°€ ν•„μš”ν•˜λ‹€.

신뒰ꡬ간

πŸ’‘μ‹ λ’°κ΅¬κ°„
νŠΉμ • λ²”μœ„ 내에 값이 μ‘΄μž¬ν• κ²ƒμœΌλ‘œ μ˜ˆμΈ‘λ˜λŠ” μ˜μ—­
→ μ˜ˆμ‹œ - μ˜μ–΄μ μˆ˜κ°€ 10μ μ—μ„œ 90점 사이일 것 κ°™μ•„μš”

 

πŸ’‘ μ‹ λ’°μˆ˜μ€€
μ‹€μ œ λͺ¨μˆ˜λ₯Ό μΆ”μ •ν•˜λŠ”λ° λͺ‡ νΌμ„ΌνŠΈμ˜ ν™•λ₯ λ‘œ 신뒰ꡬ간이 μ‹€μ œ λͺ¨μˆ˜λ₯Ό ν¬ν•¨ν•˜κ²Œ λ˜λŠ” ν™•λ₯ . 주둜 95%와 99% λ₯Ό μ΄μš©ν•œλ‹€.
→ μ˜ˆμ‹œ - μ˜μ–΄μ μˆ˜κ°€ 10μ μ—μ„œ 90점 사이일에 뢄포할 ν™•λ₯ μ΄ 95% κ°™μ•„μš”

scipy 라이브러리 μ΄μš©ν•΄μ„œ 신뒰ꡬ간 κ΅¬ν•˜κΈ°

import scipy.stats as st
import numpy as np

#μƒ˜ν”Œ 데이터 μ„ μ–Έ 
sample1 = [5, 10, 17, 29, 14, 25, 16, 13, 9, 17]
sample2 = [21, 22, 27, 19, 23, 24, 20, 26, 25, 23]

df = len(sample1) - 1 # μžμœ λ„ : μƒ˜ν”Œ 개수 - 1
mu = np.mean(sample1) # ν‘œλ³Έ 평균
se = st.sem(sample1) # ν‘œμ€€ 였차

# 95% 신뒰ꡬ간 ( = 95% μ‹ λ’°ν•˜λ €λ©΄ λ°μ΄ν„°μ˜ λ²”μœ„κ°€ μ–΄λ–»κ²Œ λ˜λŠ”μ§€?)
st.t.interval(0.95, df, mu, se) # (10.338733110887336, 20.661266889112664)

# 99% 신뒰ꡬ간( = 99% μ‹ λ’°ν•˜λ €λ©΄ λ°μ΄ν„°μ˜ λ²”μœ„κ°€ μ–΄λ–»κ²Œ λ˜λŠ”μ§€?)
# 99% 둜 μ‹ λ’°ν•  수 μžˆμ–΄μ•Ό ν•˜λ―€λ‘œ, μ•žμ„  95% 보닀 데이터 λ²”μœ„κ°€ 넓은 점 μ΄ν•΄λ˜μ…¨λ‚˜μš”? :) 
st.t.interval(0.99, df, mu, se) # (8.085277068873378, 22.914722931126622)