본문 바로가기

분류 전체보기

(284)
0. 강의 개요 목적 - Data Scientist 시험(Pro DS 시험 등)에 나오는 문제들을 풀 수 있게, 기본 개념 및 예제들에 대해서 설명하고자 함 - 시험 대비가 아니어도, 이 강의 내용을 충실히 따라오면, 통계/데이터마이닝 부분의 기초 개념 및 실제 적용을 충분히 할 수 있을 것임 사전 지식 - Python 기본 문법 및 Pandas 기본 기능은 알고 있어야 하고, - 문제 풀이의 툴로 사용할 Jupyter Notebook이 설치되어 있고, 기본적인 사용법을 알고 있어야 함 강의 방법 - 텍스트로 된 설명 및 강의 자료는 이 tistory 페이지에 게재 - 동영상은 youtube에 올리고, 그 링크를 여기 tistory페이지내에 기재 - 코드는 쥬피터 노트북에서 생성되는 ipynb 파일로 작성/배포할 것임 ..
코로나 확진자 수/ 사망자 수에 대한 물방울 차트(Bubble Chart) 애니메이션 파이썬을 이용해서 다음과 같은 애니메이션을 만들고자 한다. (아래는 애니메이션 실행되는 것을 캡처한 그림임) 물방울 차트(bubble chart)라고 불리는 것으로, 한스 로슬링(Hans Rosling) 교수님이 유행시킨 차트이다. x축은 신규 확진자 수에 대한 로그 스케일 값이고(주별 합계), y축은 주별 사망자 수 합계에 대한 로그 스케일 값이다. 로그 스케일로 변환하지 않으면 데이터의 간극이 너무 커서 제대로 표현되지 않는다. (적게 발생한 국가와 많이 발생한 국가 간 간극이 너무 큼) 물방울의 크기는 그 국가의 인구 수를 나타내고, 색깔은 어느 대륙에 있는지를 표시한다. 프로그램 작성 방법 프로그램 언어로 파이썬을 사용하고, 주피터 노트북을 이용한다. 코로나 데이터는 ECDC 사이트에서 다운로드한..
국가별 코로나(COVID-19) 확진자 그래프 그리기 코로나 데이터를 인터넷에서 자동으로 다운로드하고, 이 데이터를 이용해서 국가별 코로나 신규 확진자 및 누적 확진자 추이 그래프를 그리는 프로그램을 작성해보겠다. (아래 그림과 같은) 코로나 데이터 코로나 데이터는 ECDC 사이트를 이용하도록 하겠다. 여기서는 매일 전 세계 코로나 데이터를 갱신해서 올려주고, 그 데이터를 무료로 다운로드할 수 있다. ECDC 사이트: https://data.europa.eu/ 엑셀파일 자동 다운 링크: https://www.ecdc.europa.eu/sites/default/files/documents/COVID-19-geographic-disbtribution-worldwide.xlsx 프로그램 구상 프로그램은 파이썬을 사용해서 할 것이고, 소스는 .py로도 만들고, 주..
등각 나선, 나방이 광원 주위로 몰려드는 이유 나방을 '불나방'이라고도 한다. 불을 좋아하는 나방, 불을 보면 앞뒤 안 보고 달려드는 나방이라서 그런 이름이 붙여졌다. 밤에 이동하는 대부분의 날개가 있는 곤충들은 불을 보면 모여드는 것 같다. 해서, 이런 곤충들의 습성을 이용해서 '곤충 퇴치기'를 만들기도 한다. 그런데 왜 나방을 비롯한 날곤충들은 불로 뛰어들까? 불이 좋아서 그렇다고 하는데, 아니 왜 불이 좋단 말인가? 불이 좋아서 이득이 있어야 할 거 아닌가? 뛰어들어봐야 죽기만 하는데...(어릴 적부터 들던 의문점이었다. 나방들은 멍청한 걸까?) 나는 모든 현상에는 그 이유가 있고, 특히나 생물체의 유전적 행동에는 그 진화론적 당위성이 있다고 생각한다. 그런 현상 및 행동을 함으로써 살아남을 수 있었던 이점이 있다는 것이다. 나방이 불을 향해 ..
자연 상수(e, Euler Number)의 의미 이 글은 왜 기간을 무한대로 한 복리계산 값이 $e^r$이 되는지, 미래가치(Future Value)의 계산이 왜 $FV = PV \cdot e^r$이 되는지, 그리고 자연상수 혹은 오일러 수(Euler's Number)라고 불리는 $e$가 무엇이고 어떻게 계산되고 의미는 무엇인지를 설명한다. $e$란 무엇? $e$는 자연상수 혹은 오일러 수(Euler's Number)라고 불리고, 값은 무리수로서 약 $2.718...$ 정도의 값을 가진다. 자연계의 현상을 잘 설명한다고 해서 자연상수로 불리고, $e$를 밑수로 하는 로그를 자연로그라고 하고 $\ln$으로 표기하기도 한다. $$\ln x = \log _{e}{x} $$ $e$ 구해보기 $e$값이 어떻게 되는지 구하는 것은 크게 2가지 방법이 있다. 하나..
04-2. 복소 지수, 자연 상수 e 앞에서 복소평면에서 반지름이 1인 원을 그리는 함수가 $C(x) = \cos x + i\sin x$ 임을 알아봤다. 이것이 $e^{i \theta}$와 같다는 것을 보이는 것이 최종 목표이고, 증명 방법은 사인과 코사인 함수로 표현된 $C(x)$를 일반 다항식으로 바꾸고 이것이 $e^{ix}$와 같다는 것을 보일 것이다. $C(x)$를 다항식으로 전개하기 전에, 먼저 오일러 수(Euler's Number) $e^{i \theta}$에 대해 알아보자. 오일러 수 (Euler's Number)$e$는 오일러 수(Euler's Number)이고, $e=2.718...$ 정도의 값을 가지는 무리수이고, $e^x$를 미분하면 그대로 $e^x$가 되는 특성을 가지고 있는 수이다. $$ (e^x)' = e^x$$ 미..
04-1. 복소 평면, 복소평면에서의 원 복소평면에서의 원 복소평면에서의 원에 대한 미분을 알아볼 것이다. 뜬금없을 수도 있으나, 이 글의 끝까지 가보면 왜 이것에 대해 알아보는지 이유를 알 수 있을 것이다. 이를 위해서 우리는, 복소평면이 무엇인지도 알아야겠고, 원이 어떻게 표현되는지도 알아야한다. 복소평면 복소평면은 실수와 허수를 모두 표현하기 위한 평면 공간이다. (복소평면을 '가우스 평면'이라고 한다.) 허수는 제곱했을 때 $-1$이 되는 수 $i$를 포함한 수이다. ($2i, 3i$ 등) $$ i^2 = -1$$ $$ i = \sqrt {-1}$$ 허수 $i$가 도입된 것은 $x^2 = -1$을 만족하는 수를 표현하기 위함이었다. 수학에서는 $i$라고 표현하고, 전기/전자 공학 쪽에서는 $j$라는 표기를 사용한다. 전류를 나타내는 $i..
04. 푸리에 급수의 복소지수 표현 푸리에 급수의 사인 함수 표현, 복소 지수 표현은 아래와 같다. [푸리에 급수의 사인함수 표현] $y(t) = a_0 + \sum _{n=1}^{\infty}{a_n \cos n\omega t + b_n \sin n\omega t}$ $a_0 = \frac {1}{T} \int _{0}^{T}{y(t) dt}$ $a_n = \frac {2}{T} \int _{0}^{T}{y(t) \cos n\omega t dt} $ $b_n = \frac {2}{T} \int _{0}^{T}{y(t) \sin n\omega t dt} $ [푸리에 급수의 복소지수 표현] $y(t) = \sum _{n=-\infty}^{\infty}{C_n e^{in\omega t}}$ $C_n = \frac {1}{T} \int _{0}..
03. 푸리에 계수 앞 장에서 복잡한 신호를 여러 사인파의 합으로 나타내는 푸리에 급수를 알아봤다. $ y(t) = a_0 + \sum _{n=1}^{\infty}{a_n \cos 2\pi nft + b_n \sin 2\pi nft} $ [식 1] $ y(t) = a_0 + \sum _{n=1}^{\infty}{a_n \cos n\omega t + b_n \sin n \omega t}$ [식 2] $ y(t) = a_0 + \sum _{n=1}^{\infty}{a_n \cos \frac {2\pi n}{T}t + b_n \sin \frac {2\pi n}{T}t} $ [식 3] 여기서 [식 2]를 주로 사용하겠다. 단위 시간에 얼마나 각이 빨리 변하는 지를 나타내는 각속도를 이용한 표현이다. $\omega$는 각속도를 의미..
삼각함수의 덧셈 정리 삼각 함수의 덧셈 정리 $$ \sin (\alpha + \beta) = \sin \alpha \cos \beta + \cos \alpha \sin \beta $$ $$ \sin (\alpha - \beta) = \sin \alpha \cos \beta - \cos \alpha \sin \beta $$ $$ \cos (\alpha + \beta) = \cos \alpha \cos \beta - \sin \alpha \sin \beta $$ $$ \cos (\alpha - \beta) = \cos \alpha \cos \beta + \sin \alpha \sin \beta $$ 정리에 대한 증명 애니메이션 위 애니메이션을 제작한 파이썬 코드 소스코드는 GIT에서도 볼 수 있음 github.com/rhaos6..