>  기사  >  백엔드 개발  >  Pandas에서 시간대 인식 타임스탬프를 순진한 현지 시간으로 변환하는 방법은 무엇입니까?

Pandas에서 시간대 인식 타임스탬프를 순진한 현지 시간으로 변환하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-05 02:05:01311검색

How to Convert a Timezone-Aware Timestamp to Naive Local Time in Pandas?

Pandas에서 시간대 인식 타임스탬프를 순진한 현지 시간으로 변환하는 방법

Pandas에서는 tz_localize 함수를 사용하여 타임스탬프를 생성합니다. 또는 시간대를 인식하는 DateTimeIndex. 그러나 이미 시간대를 인식하는 데이터를 처리할 때는 현지 시간에 대한 시간대 정보를 유지하면서 이를 원래의 타임스탬프로 다시 변환해야 할 수도 있습니다.

한 가지 옵션은 시간대를 없음으로 설정하는 것입니다. , 그러나 이로 인해 시간이 UTC로 변환됩니다. 이를 방지하기 위해 pandas는 사용자에게 표시되는 시간을 현지 시간대에서 유지하면서 시간대 정보를 효과적으로 제거하는 tz_localize(None) 함수를 제공합니다.

예를 들어 다음 시간대를 고려하세요. -aware DateTimeIndex:

t = pd.date_range(start="2013-05-18 12:00:00", periods=2, freq='H', tz="Europe/Brussels")

tz_localize(None)를 사용하면 이를 순진한 현지 시간으로 변환할 수 있습니다.

t_naive_local = t.tz_localize(None)

결과 인덱스는 이전과 동일한 시간을 갖지만 시간대 정보 없이:

t_naive_local

DatetimeIndex(['2013-05-18 12:00:00', '2013-05-18 13:00:00'],
               dtype='datetime64[ns]', freq='H')

또한 pandas는 시간대 정보를 제거하고 시간을 UTC로 변환하여 순진한 UTC 시간을 생성하는 tz_convert(None) 함수도 제공합니다.

이 변환은 다음 타이밍에서 알 수 있듯이 datetime.replace 메서드를 사용하는 대체 접근 방식보다 훨씬 더 효율적입니다.

%timeit t.tz_localize(None)
1000 loops, best of 3: 233 µs per loop

%timeit pd.DatetimeIndex([i.replace(tzinfo=None) for i in t])
10 loops, best of 3: 99.7 ms per loop

이러한 기능을 활용하면 쉽게 변환할 수 있습니다. 시간대 인식 팬더 데이터를 현지 시간 또는 UTC로 변환하여 사용자가 볼 수 있는 시간을 보존하고 데이터 처리 효율성을 높입니다.

위 내용은 Pandas에서 시간대 인식 타임스탬프를 순진한 현지 시간으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.