본문 바로가기

Programming

(92)
2. Graphical Heuristics/Truthful Art _ python Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 저번 포스팅에 이어서 이번에는 데이터시각화에 있어서 저명한 분들의 서적을 바탕으로 데이터시각화 디자인 방법론에 대해서 알아보도록 하자. 먼저 애드워드 터프(Edward Tufte)는 수적 정보의 비주얼 디스플레이 디자인에 저명한 사람이다. 그는 Graphical Heuristic에 있어서 Data-ink ratio라는 개념과 Chart-junk라는 개념을 소개한다. Heuristic(발견법)이란 무엇일까? Heuristic은 의사결정을 할 때 있어서 따를 수 있는 절차 혹은 규칙을 뜻하며, 이는 가장 최선 혹은 완벽은 아니더라도 실용적이어야 한다..
1. 정보시각화의 원리(Visualization wheel ) Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 우리는 살아가면서 무수히 많은 시각화된 정보들을 접하고 있으며 때로는 생성하게 된다. 간단하게 막대그래프부터 지하철이나 버스 노선도 역시 그 예이다. 이 전 파이썬을 활용한 데이터마이닝에 관련한 9개의 포스팅을 통해 이제 어느정도 데이터를 읽고 쓰고 편집하는 것이 가능하다면, 한 번 그 데이터를 표현해보는것들을 다뤄볼 예정이다. 글쓴이는 원래 데이터 시각화에 많은 관심이 있었기에 이번 단원을 조금 자세하게 연재해보고자 한다. Michigan University의 수업에서는 Alberto Cairo가 제안한 Visualization Wheel에 대..
9. 통계적 분석(분포, 가설 검정)_ python 데이터마이닝 Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 이제 어느정도 Python에서 pandas나 numpy를 이용해서 데이터를 어떻게 다루는 지 익숙해지셨다면 한번 통계적 분석을 해보도록 하죠. 이제부터는 pandas와 numpy는 어느정도 다 이해한다는 전제하에 설명을 이어가볼게요. 혹시 이항분포나 정규분포 등 확률적인 개념이 이해가 안 가시는 분들은 구글링을 통해서 학습 후 보시면 좋을 것 같네요. 먼저 파이썬에서 데이터들의 분포에 대해서 어떻게 분석하고 다루는 지 알아볼까요? #numpy 라이브러리는 아래처럼 다양한 분포에 대한 함수를 제공하기도 한답니다 np.random.binomial(1..
8. Pandas 심화(scales, pivot table, date function) Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 오늘은 pandas 심화과정에 대한 컨텐츠를 마무으리! 해보고자 합니다. 먼저 Scale에 대해 빠르게 알아볼게요. 우리가 무언가를 scaling한다고 하면 무슨 말인가요? 다양한 scale방법이 있겠지만 뭐 공통적으로는 어떤 데이터들을 무언가를 기준삼아서 정렬 혹은 그룹핑하게 됩니다. pandas 에서도 역시 이와 같은 method가 존재하죠. df['Grades'].astype('category').head() #이 코드는 앞의 데이터프레임의 타입을 카테고리로 설정하겠다는 것입니다. >>> excellent A+ excellent A exce..
7. Pandas 심화 (groupby) Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 이번 글에서도 역시 pandas의 여러가지 자주쓰는 기능에 대해서 알아볼텐데요. 만약 어떤 데이터프레임에서 여러 데이터들이 어떤 그룹에 속하게 나누어질 수 있다면 우리는 이것을 어떻게 다룰까요? %%timeit -n 10 for state in df['STNAME'].unique(): avg = np.average(df.where(df['STNAME']==state).dropna()['CENSUS2010POP']) print('Counties in state ' + state + ' have an average population of ' + s..
6. Pandas 심화 (Merge(), Pandorable code) Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 이제까지 간단한 파이썬과 Numpy 그리고 Pandas를 활용한 데이터마이닝방법에 대해서 알아보았는데요, 이제부터는 DataFrame을 합치거나 그룹핑 하는 등 조금 더 심화적인 데이터를 다루는 함수에 대해서 살펴보도록 합시다. 먼저 소개한 대로 DataFrame을 합치는 것 부터 해볼까요? staff_df = pd.DataFrame([{'Name': 'Kelly', 'Role': 'Director of HR'}, {'Name': 'Sally', 'Role': 'Course liasion'}, {'Name': 'James', 'Role': 'Gr..
5. pandas 기초(Querying a DataFrame, Indexing) Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 이번시간에는 저번 자료에 이어서 DataFrame을 Querying하는 방법에 대해서 한번 알아보도록 할게요. 기본적인 Series나 Dataframe과 같은 타입에 대해서 알고 싶으신 분들은 아래의 이전 게시글을 참고해주세요. 2020/02/04 - [Programming] - 4. pandas 기초(series, dataframe) _ 파이썬을 활용한 데이터마이닝 Querying한다는 것은 저번에 말했듯이 어떤 데이터에 어떻게 요청해서 원하는 정보를 얻을 수 있을까라고 생각하시면 됩니다. 바로 예시로 들어갈게요. df['Gold'] > 0 #..
4. pandas 기초(series, dataframe) Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 오늘은 파이썬을 활용한 데이터분석 3대장 라이브러리 중 하나인 pandas에 대해서 알아보도록 할게요. 3대장 중 하나는 저번시간에 다뤘던 Numpy이구요? 나머지 하나는 아마 곧 다루게 될 거에요. pandas는 특히 숫자 테이블이나 시계열 분석을 위한 데이터 구조 및 함수들을 제공하는데요. 한번 시작해보죠. import pandas as pd #pandas는 주로 이렇게 import 한답니다. animals = ['Tiger', 'Bear', 'Moose'] pd.Series(animals) >>> 0 Tiger 1 Bear 2 Moose d..