본문 바로가기

Python/Pandas

(38)
<파이썬 판다스> Chapter 12-2 사례별 시계열 데이터 계산하기 12-2 사례별 시계열 데이터 계산하기 에볼라 최초 발병일 계산하기¶ebola 데이터프레임의 마지막 행과 열을 5개씩만 살펴보겠다. ebola 데이터프레임은 데이터 시간 역순으로 정렬되어 있다. 즉, 시간 순으로 데이터를 살펴보려면 데이터프레임의 마지막부터 살펴봐야 한다.¶ In [38]: import pandas as pd import os ebola = pd.read_csv(&#39;doit_pandas_data/data/country_timeseries.csv&#39;) print(ebola.iloc[-5:, :5]) Date Day Cases_Guinea Cases_Liberia Cases_SierraLeone 117 3/27/2014 5 103.0 8.0 6.0 118 3/26/2014 4 86..
<파이썬 판다스> Chapter 12-1 datetime 오브젝트 12-1 datetime 오브젝트 datetime 라이브러리는 날짜와 시간을 처리하는 등의 다양한 기능을 제공하는 파이썬 라이브러리이다. datetime 라이브러리에는 날짜를 처리하는 date 오브젝트, 시간을 처리하는 time 오브젝트, 날짜와 시간을 모두 처리하는 datetime 오브젝트가 포함되어 있다. 앞으로 3개의 오브젝트를 명확히 구분하기 위해 영무을 그대로 살려 date, time, datetime 오브젝트라고 부르겠다. datetime 오브젝트 사용하기¶datetime 오브젝트를 사용하기 위해 datetime 라이브러리를 불러온다.¶ In [1]: from datetime import datetime now, today 메서드를 사용하면 다음과 같이 현재 시간을 출력할 수 있다.¶ In [..
<파이썬 판다스> Chapter 11-4 그룹 오브젝트 11-3 그룹 오브젝트 그룹 오브젝트 살펴보기 지금까지는 groupby 메서드에 바로 집계 메서드를 사용하여 결과를 확인했다. 즉, groupby 메서드가 반환하는 값인 그룹 오브젝트에 대해서는 언급하지 않았다. 이번에는 groupby 메서드의 결괏값인 그룹 오브젝트를 자세히 살펴보겠다. 그룹 오브젝트 저장하여 살펴보기¶다음은 tips 데이터 집합에서 임의로 10개의 데이터를 추출한 것이다.¶ In [60]: import seaborn as sns tips = sns.load_dataset(&#39;tips&#39;) tips_10 = sns.load_dataset(&#39;tips&#39;).sample(10, random_state=42) print(tips_10) total_bill tip sex ..
<파이썬 판다스> Chapter 11-3 데이터 필터링 11-3 데이터 필터링 만약 그룹화한 데이터에서 원하는 데이터를 걸러내고 싶다면 어떻게 해야 할까? 그럴 때는 데이터 필터링을 사용하면 된다. 데이터 필터링을 사용하면 기준에 맞는 데이터를 걸러낼 수 있다. 다음 예제를 통해 데이터 필터링이 무엇인지 알아보겠다. 데이터 필터링 사용하기 - filter 메서드¶다음과 같이 tips 데이터 집합을 불러와 데이터 크기를 확인한다.¶ In [9]: import seaborn as sns tips = sns.load_dataset(&#39;tips&#39;) print(tips.shape) (244, 7) size 열의 데이터 수를 확인해 보면 1, 5, 6 테이블의 주문이 매우 적다는 것을 알 수 있다.¶ In [3]: print(tips[&#39;size&#3..
<파이썬 판다스> Chapter 11-2 데이터 변환 11-2 데이터 변환 11-1에서는 집계 메서드의 활용법을 알아보았다. 이번에는 데이터 변환 메서드에 대해 알아보겠다. 데이터 변환 메서드는 데이터와 메서드를 일대일로 대응시켜 계산하기 때문에 데이터의 양이 줄어들지 않는다. 말 그대로 데이터를 변환하는 데 사용한다. 표준점수 계산하기 통계 분야에서는 데이터의 평균과 표준편차의 차이를 표준점수라고 부른다. 표준점수를 구하면 변환한 데이터의 평균값이 0이 되고 표준편차는 1이 된다. 그러면 데이터가 표준화되어 서로 다른 데이터를 쉽게 비교할 수 있게 된다. 표준점수는 통계에서 자주 사용하는 지표이다. 표준점수 계산하기¶다음은 표준점수를 계산하는 함수이다.¶ In [1]: def my_zscore(x): return (x - x.mean())/ x.std()..
<파이썬 판다스> Chapter 11-1 데이터 집계 11-1 데이터 집계 데이터 집계하기 - groupby 메서드 수집한 데이터를 바탕으로 평균이나 합 등을 구하여 의미 있는 값을 도출해 내는 것을 '집계'라고 한다. 데이터를 집계하면 전체 데이터를 요약, 정리하여 볼 수 있기 때문에 분석이 훨씬 편해진다. 그러면 groupby 메서드로 평균값을 구하는 과정을 통해 데이터 집계가 무엇인지 알아보겠다. groupby 메서드로 평균값 구하기¶먼저 갭마인더 데이터 집합을 불러온다.¶ In [1]: import pandas as pd df = pd.read_csv(&#39;doit_pandas_data/data/gapminder.tsv&#39;, sep = &#39;\t&#39;) 다음은 year 열을 기준으로 데이터를 그룹화한 다음 lifeExp 열의 평균을 ..
<파이썬 판다스> Chapter 10-3 apply 메서드 활용하기 - 고급 10-3 apply 메서드 활용하기 - 고급 이번에는 조금 더 큰 데이터를 사용하여 실습을 진행해 보겠다. 이번에 사용할 데이터는 seaborn 라이브러리의 titanic 데이터 집합이다. 데이터프레임의 누락값을 처리한 다음 apply 메서드 사용하기¶데이터프레임의 누락값 처리하기 - 열 방향¶이번에도 seaborn 라이브러리에 있는 데이터를 사용한다. seaborn 라이브러리에 있는 titanic 데이터 집합을 불러와 변수 titanic에 저장한다. In [8]: import seaborn as sns titanic = sns.load_dataset("titanic") 다음은 titanic 데이터프레임의 데이터 정보를 출력한 것이다.¶ In [9]: print(titanic.info( )) RangeI..
<파이썬 판다스> Chapter 10-2 apply 메서드 활용하기 - 기초 10-2 apply 메서드 활용하기 - 기초 다음 실습을 통해 apply 메서드 활용법을 알아보겠다. apply 메서드로 브로드캐스팅한 결과가 올바른 값인지 확인하기 위해 시리즈, 데이터프레임의 기초 연산 결과와 비교하며 실습을 진행하겠다. 시리즈와 데이터프레임에 apply 메서드 사용하기¶시리즈와 aaply 메서드¶먼저 실습에 사용할 데이터프레임과 제곱 함수를 준비한다. In [27]: # 데이터 프레임 준비 import pandas as pd df = pd.DataFrame({&#39;a&#39;:[10, 20, 30], &#39;b&#39;:[20, 30, 40]}) print(df) a b 0 10 20 1 20 30 2 30 40 In [28]: # 제곱 함수 준비 def my_sq(x): re..