1주일 동안 교육을 받았다. 회사의 부산 이전 후 지방이라는 곳에서의 교육 인프라가 얼마나 열악한지를 새삼 느끼며, 어렵게 신청해서 어렵게 오게된 교육.
재작년엔 R을 배웠었는데, 역시 데이터 분석의 도구로 떠오르는 파이썬이라는 언어도 알아두면 좋을 것 같아서 교육을 변경해서 왔다.
교육제목은 빅데이터를 위한 파이썬 , 교육장소는 교육오기전 회사가 바뀐(삼성SDS -> 크레듀) 멀티캠퍼스~
일단 교육은 IPython으로 진행되었다. 그냥 오리지널 파이썬을 바닐라파이썬-강사님의 표현에 의하면 아무 맛이 없는(?) 기본 아이스크림이 바닐라 아이스크림이라 파이썬도 그냥 오리지널 파이썬을 바닐라 파이썬이라 지칭한다고 하셨음-이라 하고 IPython은 바닐라 파이썬에다가 웹환경에서 할수 있는 노트북(Notebook)과 로컬호스트기반이긴 하지만 서버 환경으로 돌아가게 하는 구조인듯한다.
해당 개발 환경은 아나콘다 라는 설치 버전으로 구성가능하고 지원하는 os는 리눅스,윈도우, OS X 인듯하다. 유닉스는 없다( 오픈소스기반이라 유닉스 버전은 없는 듯하다. 개인적으로 회사에선 모두 유닉스 서버인데 어떻게 적용을 해야 하나 고민중이다.)
다른 개발자도구도 있긴 하지만 웹기반의 IPython에 데이터 분석에 많이 사용하는 다른 패키지를 이용하는 방식으로 데이터 분석을 할때는 충분하다고 하였다.
그 패키지의 이름은 Pandas, Numpy, Scipy 같은 패키지를 이용하면 된다고. 즉 파이썬이라는 프로그래밍 랭귀지 자체보다는 데이터 분석을 하기위해 필요한 파이썬의 기본 기능과 패키지를 이용하는 방법을 실습위주로 배워보는것이다.
데이터 분석의 과정은 아래 5 단계로 나눌수 있다고 한다.
획득 > 정리 > 변형 > 분석 > 표현
기타 분석에 통계적 지식과 세부적인 패키지의 활용법은 필요한 문서를 참조해서 깊게 공부 할 필요는 있지만,
데이터 분석에서 중요한 부분은 데이터를 가져오 분석이 가능한 형태로 데이터를 정리하고 변형하는 과정이 가장 중요하다고 하였다.
또한 이 과정이 가장 많은 시간이 필요하다고(전체과정의 70%)
간단히 각 단계별로 파이썬의 필요한 기능,함수등을 정리하면 아래표와 같다.
획득 |
정리 |
변형 |
분석 |
표현 |
read_csv read_excel read_json from_sql |
.fillna() .dropna() .drop_duplicate() .unique() |
.groupby .merge() .concat(0 |
.sum() .mean() numpy scipy apply(df) |
plot() to_excel to_sql |
개인적으로 획득과정은 pandas의 잘 갖춰진 기능으로 웹이든 파일이든 db이든 쉽게 가져올수 있을듯하고, 실제 정리와 변형을 위한 기술습득이 필요해 보인다.
수집한 데이터가 null값이나, 구조가 분석하기 적합하지 않은 구조일때 어떻게 분석가능한 데이터 프레임으로 구성할거냐가 능력인것인다.
구조를 우리가 생각하는 표처럼 만들고 좌우로 바꾸고 한표로 병합하고, 이런 걸 자유자재로 하면 데이터를 다루는 마법사가 될수 있을것 같지만 기술습득에 나름 연습과 시간이 필요해보인다.
효과적인 교육을 위한 제언이라고 하면,
교육들어오기전에 내가 분석하고 싶은 대상 데이터를 가지고 교육이 진행되는 가정중에 해당 데이터를 직접 과외로 분석하는 행위를 같이 수행해본다고 하면 시너지가 더 될것 같다. 결국 데이터 분석이라는게 내가 잘알고 있는 데이터를 가지고 해야 피부에 와닿는법. 웹사이트의 사례도 좋고, 만든 데이터를 가지고 해도 되지만 피부에 와닿는 데이터셋이 아니면 데이터 자체 내용 파악도 시간이 걸리고, 파악이 되어야 어떻게 분석할지? 무엇을 분석할지에 대한 인사이트도 생기는 법이니...
첨부파일은 수업시간에 간단히 메모한 내용(그닥 볼건 없다 대부분 실습을 하면서 노트북에 주석을 작성하는 방식으로 했던터라)
데이터분석을 위한 파이썬 관련 즐겨찾기
- 아나콘다 설치 : https://www.continuum.io/downloads
- 데이터관련 파이썬 교육 실습 노트북 깃허브 : https://github.com/lseongjoo/bigpy/
- 파이썬 기초 실습 노트북 깃허브 : https://github.com/lseongjoo/pydata-book
- PyData.org : http://pydata.org/
- pandas 패키지 공식 사이트 : http://pandas.pydata.org/
- pandas Documentation : http://pandas.pydata.org/pandas-docs/stable/
- SciPy Documentation : http://docs.scipy.org/doc/scipy/reference/
- NumPy Documentation : http://docs.scipy.org/doc/numpy/
- 파이썬 시각화 패키지 MatPlotlib : http://matplotlib.org/
- 파이썬 데이터 시각화 패키지 MPLD : http://mpld3.github.io/examples/scatter_tooltip.html
- 파이썬 한국어 처리 패키지 코엔엘파이 : http://konlpy.org/ko/v0.4.3/
- 뷰티블수프(파이썬 HTML.XML 패키지) : http://coreapython.hosting.paran.com/etc/beautifulsoup4.html
- 파이썬 실행환경 (Pyexe) : http://www.py2exe.org/
- 클러스터링 프로젝트 Spark : http://spark.apache.org/
- R 과 파이썬 비교 : http://pandas.pydata.org/pandas-docs/stable/comparison_with_r.html
- 빅파이(빅데이터를 위한 파이썬 페이스북 커뮤니티) : https://www.facebook.com/bigpython
- Python Korea 페이스북 사용자 모임 : https://www.facebook.com/groups/pythonkorea/
'일상' 카테고리의 다른 글
[근황] 통계학 공부를 시작하다 (2) | 2019.05.02 |
---|---|
다시 시작 (0) | 2018.10.07 |
가을과 겨울사이에 잘어울리는 팝송 Adele "Hello" (0) | 2015.11.08 |
내가 유일하게 보는 무한도전, 예능이 다큐인가? (0) | 2015.09.13 |
아메리칸 셰프 , 음식 아니 내가 사랑하는 일에 대한 이야기 (0) | 2015.08.09 |