본문 바로가기

빅데이터(Big Data) 이론과 코드

(13)
오징어 게임으로 배우는 베이지안 확률 넷플릭스 스릴러, 오징어 게임 중에서 '달고나' 가 선택과 그에 따른 결과라는 인생관점에서 참 공감이 되는 주제입니다.시즌 2에서는 상대적으로 쉬운 △ 세모 모양을 선택한 주인공 기훈이 위와 같이 어려운 세모 모양의 달고나를 받게 되는데요. 여러분의 인생에는 어떤 모양의 달고나가 주어졌는지 생각해보면서, 인공지능의 기본원리인 "베이지안 확률"에 대한 아래 글을 읽어보시면 좋겠습니다. 2025년 6월 27일 개봉하는 오징어 게임 시즌 3 기대되시죠? 달고나 게임에서 생존할 확률은, 어떤 모양이 주어지느냐에 따라서 생존 확률이 달라지겠죠? 예를 들면, 세모 모양은 쉽게 성공할 수 있고, 우산 모양은 반대로 매우 어렵겠죠? 이렇게 특정 조건이 주어졌을 때의 확률을 "조건부 확률" 이라고 합니다.  오징어 게임..
최대 우도 추정법(Maximum Likelihood Estimation, MLE) 데이터 분석과 인공지능 개발에서 중요한 것은 "데이터" 입니다.우리가 학교에서 배운 통계의 하나는 분포를 먼저 가정하고, 해당 분포에서 특정 값이 나올 통계적 확률을 계산하는 것이었습니다. $$X \sim N(μ, σ^2)$$ 이것은 확률변수 X가 평균 μ, 표준편차 σ인 정규분포(Normal distribution)를 따른다(~)는 표현식입니다. 어렵지 않죠? 그런데, 우리는 실제 분석과 개발에서 대부분 그 "분포" 라는 것을 모릅니다. 우리에게 주어진 것은 한 줌의  샘플 "데이터" 뿐이죠. 그래서 우리는 그 Sample data를 가지고, 전체 집단(Population)을 추정해야 합니다. 전체 집단을 다른 말로는 모집단이라고도 하죠. 이 모집단을 추정한다는 것은 앞서 정규분포를 정의했을 때 처럼,..
예산과 전문가 없이 데이터로 인포그래픽을 만들기 예산과 전문가는 없는데, 데이터로 인포그래픽을 당장 만달라고요? 인터넷 미디어에 들어갈 인포그래픽을 팀별로 만들어야 하는 상황입니다. 어려워진 경영여건 탓에 가용한 예산도 없는데, 기한은 당장 다음주까지라고? 나름대로 열심히 인포그래픽을 만들었지만, “다시” “또다시” 눈에 잘 안 들어온다고 합니다. 반면에 옆 팀 주 대리는 바로 패스했다는 소식이 더욱 초조하게 만듭니다. 까다로운 상무님 취향에 맞춰서 있어 보이게 인포그래픽을 만들었는데, 도대체 뭐가 문제였을까요? 데이터 시각화를 할 때 우리는 “있어 보이게” 만드는 것에만 집중하는 실수를 하곤 합니다. 이러한 문제를 겪지 않기 위해서는 데이터 시각화의 원리를 이해해야 합니다. 데이터 시각화는 인간의 시각과 지각능력을 바탕으로 데이터에 대한 이해와 의사..
홈런볼 매출 데이터 분석 Bar Chart Race In [81]: # !pip install bar_chart_race In [6]: #필요한 모듈 불러오기 #!pip install bar_chart_race as bcr import pandas as pd import numpy as np import bar_chart_race as bcr In [7]: # !pip install pandas In [8]: #필요한 데이터 셋 불러오기 path = "비스킷브랜드점유율_T.csv" df = pd.read_csv(path, encoding='cp949') In [9]: # 요약출력 df.head() Out[9]: 구분 홈런볼 카스타드 에이스 칙촉 마가렛트 하임 오레오 칸쵸 쿠크다스 롯데샌드 닥터유바 예감 0 2011-4Q 11478 12256 9770.0 ..
마트 홈런볼과 편의점 홈런볼의 독립표본 t검정 In [28]: #티스토리 윈도우 사이즈 맞추기 from IPython.core.display import display, HTML display(HTML("")) In [29]: import scipy as sp import numpy as np from scipy import stats 1. 마트 홈런볼¶ 1-1. 데이터 수집¶ In [30]: Mart = [1.4, 1.7, 1.5, 1.6, 1.7, 1.2, 1.7, 1.5, 1.6, 1.6, 2.0, 1.8, 1.9, 1.7, 1.6, 1.8, 1.8, 1.6, 1.3, 1.2, 1.5, 1.7, 1.7, 2.0, 1.6] 1-2. 데이터 평균¶ In [31]: Mart_mu = np.mean(Mart) Mart_mu Out[31]: 1.6280..
홈런볼 슈링크플레이션과 소비자 물가지수 In [1]: #티스토리 윈도우 사이즈 맞추기 from IPython.core.display import display, HTML display(HTML("")) In [2]: import scipy as sp import numpy as np import pandas as pd from scipy import stats In [3]: cpi_korea = pd.read_csv("소비자물가지수_2020100__20230107180655.csv", encoding='cp949') In [4]: cpi_korea.info() RangeIndex: 19 entries, 0 to 18 Data columns (total 2 columns): # Column Non-Null Count Dtype --- -----..
[홈런볼로 배우는 데이터 경제] t검정 In [1]: #티스토리 윈도우 사이즈 맞추기 from IPython.core.display import display, HTML display(HTML("")) In [28]: import scipy as sp import numpy as np from scipy import stats In [29]: homerun_ball = [40.8, 41.2, 41.4, 41.6] In [30]: mu = np.mean(homerun_ball) mu Out[30]: 41.25 In [31]: # 자유도 degree of freedom df = len(homerun_ball) - 1 df Out[31]: 3 In [34]: # 분산 sigma = np.std(homerun_ball, ddof = 1) sigma ..
[파이썬 OS 모듈] import os 뜻 의미(os.listdir, os.path.join, os.path.splitext, os.walk) OS 모듈 [ 한 줄 정의 ] Operating System의 약자. 운영체제에서 사용할 수 있는 기능을 파이썬에서 쓸 수 있게 해주는 파이썬 기본 모듈 [ 기능 ] 함수 기능 os.listdir() 함수 폴더 안에 있는 파일 리스트를 만들어 줌 os.path.join() 함수 경로명과 파일명을 붙여서 파일 접속경로를 만들어 줌 os.path.splitext() 함수 (점) 을 기준으로 텍스트를 나눠주는 함수. 파일명.확장자 os.walk() 함수 해당 폴더의 하위 폴더(dir)를 모두 반환 1. 폴더 안에 있는 파일 리스트를 만들어 줌 2. 경로명과 파일명을 붙여서 파일 접속경로를 만들어 줌 3. 전체 파일 접속 경로를 폴더/파일명/확장자 구분으로 잘라 줌 4. 해당 폴더의 하위 폴더 전체에 대한 파일..