1. 데이터프레임 생성

 

[소스]

import pandas as pd
date_list = [{'yyyy-mm-dd' : '2000-06-27'},
            {'yyyy-mm-dd' : '2002-09-24'},
            {'yyyy-mm-dd' : '2005-12-20'}]
df = pd.DataFrame(date_list, columns = ['yyyy-mm-dd'])

[결과]

날짜가 기록된 데이터프레임을 만들어 주었습니다.

 

2. apply() 함수를 통한 데이터 관리

 

[소스]

def extract_year(column):
    return column.split("-")[0]

df['year'] = df['yyyy-mm-dd'].apply(extract_year)

 

[결과]

먼저 사용자 정의 함수를 살펴보면 "extract_year()"이라는 함수를 만들고 인자로

전달받은 데이터를 '-' 문자로 나누어 리스트로 담아 첫번째 원소를 리턴하고 있습니다.

만약 "2020-06-27"이라는 데이터를 인자로 받으면 ['2020', '06', '27]의 형태인 리스트로 변환되고

이 리스트의 첫번째 원소인 "2020"이 리턴됩니다.

 

마지막 줄 소스코드에 대해 설명을 하면 데이터프레임의 'yyyy-mm-dd'라는 컬럼의 데이터를 모두 가져와 apply() 함수에 인자로 넣어주고 있습니다.

그리고 리턴된 결과를 "year"이라는 컬럼에 대입하는 소스입니다.

이렇듯 for문 없이 아주 간편하게 사용자 함수를 적용할 수 있습니다.

 

 

3. apply()함수를 이용한 나이 구하기

 

[데이터프레임]

 

[소스]

def get_age(year, current_year):
    return current_year - int(year)
df['age'] = df['year'].apply(get_age, current_year = 2020)

[결과]

2번과 동일한 방식으로 진행하였으며 "age"컬럼을 추가하여 각각의 나이를 구해보았습니다.

 

 

+ Recent posts