Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 주어진 날짜 시리즈에서 연중 일(day of year)을 출력하는 프로그램 작성하기


입력

하나의 시리즈(Series)가 있다고 가정해 보겠습니다. 이때 주어진 특정 날짜 범위에서 각 날짜가 해당 연도의 몇 번째 날에 해당하는지(연중 일, day of year)를 구하고자 합니다.

해결 방법

이 문제를 해결하기 위해 다음과 같은 단계로 접근할 수 있습니다.

  • 먼저 날짜 데이터를 담은 시리즈를 정의합니다.

  • pd.date_range() 함수를 사용하여 시작 날짜 '2020-01-10'부터 총 5개의 기간(periods)에 해당하는 날짜 범위를 생성합니다.

pd.date_range('2020-01-10', periods=5)
  • Series.dt.dayofyear 속성을 활용하면 각 날짜가 연중 몇 번째 날인지 손쉽게 확인할 수 있습니다.

예제

전체 구현 과정을 살펴보면 다음과 같습니다.

import pandas as pd

date = pd.date_range('2020-01-10', periods=5)
data = pd.Series(date)
print(data.dt.dayofyear)

출력 결과

0    10
1    11
2    12
3    13
4    14

결과 설명: '2020-01-10'은 해당 연도의 10번째 날이므로 첫 번째 값이 10으로 출력되며, 이후 날짜들이 하루씩 증가하면서 11, 12, 13, 14가 순서대로 표시됩니다. dt.dayofyear는 윤년 여부도 자동으로 처리해 주기 때문에 어떤 연도의 날짜에도 정확하게 적용할 수 있습니다.