"R을 이용한 데이터 처리 & 분석 실무 - 서민구 지음" 정리 자료 #1
- https://thebook.io/006723/
- 첫번째 : goo.gl/FJjOlq
- 두번째 : goo.gl/Wdb90g
- 세번째 : goo.gl/80VGcn
- 네번째 : goo.gl/lblUsR
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)Tae Young Lee
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
- 코스피 LG유플러스 주가분석, 대한민국 부동산 분석, 강남 아파트 매매 분석, VISA 보고서 분석, 워드클라우드 등
- 국내 어떤 책에서도 다루지 않는 진짜 데이터분석 강의
- (귀차니즘에..) 소수 금융권/대기업/공기업에게만 강의된 자료
파이썬 데이터과학 1일차 - 초보자를 위한 데이터분석, 데이터시각화 (이태영)Tae Young Lee
파이썬 데이터과학 - 기초 과정(1일차)
- 데이터분석, 데이터시각화
- jupyter notebook, numpy, pandas, matplotlib, seaborn
2차 과정은 따로 올리겠습니다.
문의 및 제안 : [email protected]
데이터 소스 : https://github.com/sh2orc/datascience
"R을 이용한 데이터 처리 & 분석 실무 - 서민구 지음" 정리 자료 #1
- https://thebook.io/006723/
- 첫번째 : goo.gl/FJjOlq
- 두번째 : goo.gl/Wdb90g
- 세번째 : goo.gl/80VGcn
- 네번째 : goo.gl/lblUsR
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)Tae Young Lee
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
- 코스피 LG유플러스 주가분석, 대한민국 부동산 분석, 강남 아파트 매매 분석, VISA 보고서 분석, 워드클라우드 등
- 국내 어떤 책에서도 다루지 않는 진짜 데이터분석 강의
- (귀차니즘에..) 소수 금융권/대기업/공기업에게만 강의된 자료
파이썬 데이터과학 1일차 - 초보자를 위한 데이터분석, 데이터시각화 (이태영)Tae Young Lee
파이썬 데이터과학 - 기초 과정(1일차)
- 데이터분석, 데이터시각화
- jupyter notebook, numpy, pandas, matplotlib, seaborn
2차 과정은 따로 올리겠습니다.
문의 및 제안 : [email protected]
데이터 소스 : https://github.com/sh2orc/datascience
2. 광고시간
• 서비스 : 자동차 견인/출동 서비스 ‘원더카’
• 커넥티드카 서비스 플랫폼 '오스카’, LBS 기반 모바일 플랫폼 '코스모스'
자동차를 좋아하는 사람들이
자동차에 필요한 개발을 하는 회사
3. • Python을 사용하게 된 계기
• 닮은 점과 다른 점 비교
• MATLAB으로 하던 일을 Python으로 대체하기
• Numpy, Scipy 등을 활용한 대체
• Python이 대체하기 힘든 부분
• Python이 MATLAB보다 좋은 부분
내용
4. • 대학교, 기관에서 많이 사용
• 검증된 코드, 관리되는 코드
• MATLAB의 결과는 신뢰를 보장함
http://blog.naver.com/PostView.nhn?blogId=matlablove&logNo=221104783201&categoryNo=1&parent
CategoryNo=-1&viewDate=¤tPage=&postListTopCurrentPage=&isAfterWrite=true
신뢰의 MATLAB
help 함수명
5. • 대학교에서
• 그래프를 이쁘게 그려보자
• 행렬 계산
• 첫 직장에서
• 시각화
• 데이터 분석 및 처리
어쩌다가 MATLAB을
7. • 닮은 점
• (수학이나 공학에서)비슷한 일을 할 수 있음
• 시각화(matplotlib)
• 특정 함수들(scipy)
• 다른 점
• MATLAB: 더 수학적, Python: 더 프로그래밍 언어적
• Python은 오픈소스(공짜), MATLAB은 상용 소프트웨어 패키지(유료)
a * b
?
MATLAB vs Python
8. MATLAB vs Python
MALTAB 중추
- IDE
- 인터프리터(interpreter)
- 언어
- (방대한)기본 라이브러리
- GUI 만드는 거
Simulink
Image processing 툴킷
기타 툴킷
FileExchange
Python 중추
- 인터프리터(interpreter)
- 언어
- 기본 라이브러리
Numpy
Matplotlib
Scipy
PyQt5
기타 라이브러리
Scikit-image
여러 IDE
- PyCharm
- Spyder
- VisualStudio
Code
- 기타 등등
MATLAB 환경 Python 환경
9. 닮았어요
MATLAB 기본 IDE Spyder (Anaconda)
script scriptconsole console
variable
variable
10. MATLAB 처럼 메모리 관리
Ipython : %reset 혹은
close all
clear
clc
del x
print('n'*100)
import os
cls = lambda: os.system('cls’)
cls()
for name in dir():
if not name.startswith('_’):
del globals()[name]
MATLAB에서
스크립트의 시작을 알리는 관용구
jupyter notebook에서 : Kernel > Restart
%reset %reset -f
11. 별거 아닌 듯 가장 큰 차이
a = 1:1:10;
a(4:2:8);
a = arange(1,10,1)
a[3:8:2]
• Element index 쓰는 법이 약간 다름
• ()를 []로
• 1부터 시작, 0부터 시작
• end , -1
a[:] = 5a(:) = 5
a(1,2) a[0,1]
a[0:3][:,4:10]a(1:3,5:10)
from numpy import *
import scipy.linalg
14. 비슷한데 뭔가 달라
특정 matrix에서 최대값
• 각 행에서 최대값
• 각 열에서 최대값
• 전체 매트릭스에서 최대값
15. 행렬을 많이 다루다 보면
a * b a @ b
a .* b a * b
a ./ b a / b
a' a.conj().transpose()
a.conj().T
a.' a.transpose()
a.T
squeeze(a) a.squeeze()
repmat(a, m, n) tile(a, (m, n))
linalg.solve(a,b)
linalg.lstsq(a,b)
19. 시각화
x = arange(0.0, 2.0*pi, pi/100)
y = sin(x)
plot(x, y)
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
from numpy import *
import scipy.linalg
from matplotlib.pyplot import *
보통 Python에서는
x = np.arange(0.0, 2.0*np.pi, np.pi/100)
y = np.sin(x)
plt.plot(x, y)
MATLAB에서는
기본 라이브러리가 매우 방대함
plt.show()hold on ≒
axis([0,1,-1.5,1.5])axis([0 1 -1.5 1.5])
20. MATLAB vs matplotlib
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y);
xlabel('Location’);
ylabel('y’);
xticks([0 2 4 6]);
xticklabels({'x=0','x=2','x=4','x=6'});
text(pi,0,'< here’)
grid()
title('Test Plot’)
legend('loc','Location','northeast')
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0.0, 2.0*np.pi, np.pi/100)
y = np.sin(x)
plot1 = plt.plot(x, y)
plt.xlabel('Location’)
plt.ylabel('y’)
plt.xticks([0,2,4,6],['x=0','x=2','x=4','x=6’])
plt.text(np.pi,0, '< here’)
plt.grid()
plt.title('Test Plot’)
plt.legend(plot1, ['loc'], loc='upper right’)
plt.show()
Python에는 더 많은 시각화 라이브러리가 존재
More interactive plot : plotly, bokeh
scatter()plot3() bar()
contour()pie() surf() hist() polar()
21. • Simulink
• 초심자가 시작하기에 더 좋음
• 검증된 코드(검증된 신뢰성)
• 임베디드 코드 생성, 이식가능한 C/C++ 코드를 생성함
• 기술지원
• 속도
Python이 대체하기 힘든 부분
22. 정말 Python은 MATLAB 보다 느릴까?
from numba import jit
import random
@jit(nopython=True)
def monte_carlo_pi(nsamples):
acc = 0
for i in range(nsamples):
x = random.random()
y = random.random()
if (x ** 2 + y ** 2) < 1.0:
acc += 1
return 4.0 * acc / nsamples
Decorator 하나만 붙여주면 그냥 속도가 빨라짐
• 최신 버전의 Python을 사용하면 빠르다(3.7)
• Cython
• Async I/O
https://www.ibm.com/developerworks/communit
y/blogs/jfp/entry/A_Comparison_Of_C_Julia_Pyt
hon_Numba_Cython_Scipy_and_BLAS_on_LU_
Factorization?lang=en
https://numba.pydata.org/
23. • 나의 MATLAB 수준, Python수준, 수학 수준
• 뭐요? Import MATLAB 이요?? MATLAB API
• MATLAB or Python translator
• Python을 위한 Simulink, Block-Model Simulator(bms)
• R? Julia?
준비하면서 알게된 점
24. • 여기에 다 적지 못해서 이만 발표를 마치겠습니다.
Python이 MATLAB보다 좋은 부분