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

Python Pandas – DateOffset 값이 정규화(Normalize)되었는지 확인하는 방법

Pandas에서 DateOffset 값이 정규화(normalize)되었는지 확인하려면 offset.normalize 속성을 사용하면 됩니다. 이 속성은 해당 오프셋이 정규화되어 있다면 True, 그렇지 않다면 False를 반환합니다.

1. 필요한 라이브러리 임포트

먼저 필요한 라이브러리를 임포트합니다.

from pandas.tseries.offsets import DateOffset
import pandas as pd

2. 타임스탬프(Timestamp) 객체 생성

Pandas에서 타임스탬프 객체를 설정합니다.

timestamp = pd.Timestamp('2021-09-26 03:25:02.000045')

3. DateOffset 생성 및 정규화 적용

DateOffset을 생성합니다. 여기서는 months 매개변수를 사용해 월(month)을 증가시키고, normalize 매개변수를 사용하여 DateOffset을 정규화했습니다.

offset = pd.tseries.offsets.DateOffset(months=4, normalize=True)

정규화가 적용되면 날짜 연산 결과의 시간 정보가 자정(00:00:00)으로 초기화됩니다.

4. 업데이트된 타임스탬프 확인

print("\nUpdated Timestamp...\n", timestamp + offset)

5. DateOffset 정규화 여부 확인

offset.normalize 속성을 통해 DateOffset이 정규화되었는지 확인합니다.

print("\nThe DateOffset is normalized..\n", offset.normalize)

전체 예제 코드

from pandas.tseries.offsets import DateOffset
import pandas as pd

# Pandas에서 타임스탬프 객체 설정
timestamp = pd.Timestamp('2021-09-26 03:25:02.000045')

# 타임스탬프 출력
print("Timestamp...\n", timestamp)

# DateOffset 생성
# "months" 매개변수로 월 증가
# "normalize" 매개변수로 DateOffset 정규화
offset = pd.tseries.offsets.DateOffset(months=4, normalize=True)

# DateOffset 출력
print("\nDateOffset...\n", offset)

# 업데이트된 타임스탬프 출력
print("\nUpdated Timestamp...\n", timestamp + offset)

# DateOffset이 정규화되었는지 확인
print("\nThe DateOffset is normalized..\n", offset.normalize)

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Timestamp...
 2021-09-26 03:25:02.000045

DateOffset...
 <DateOffset: months=4>

Updated Timestamp...
 2022-01-26 00:00:00

The DateOffset is normalized..
 True

결과를 보면 원래 타임스탬프에 시간 정보(03:25:02.000045)가 있었지만, 정규화된 DateOffset을 더한 결과는 2022-01-26 00:00:00처럼 시간이 자정으로 초기화된 것을 확인할 수 있습니다. 또한 offset.normalize 속성이 True를 반환하므로 해당 DateOffset이 정규화되어 있음을 알 수 있습니다.