> 백엔드 개발 > 파이썬 튜토리얼 > 두 Pandas DataFrame 열 사이의 시차(시간 및 분)를 효율적으로 계산하려면 어떻게 해야 합니까?

두 Pandas DataFrame 열 사이의 시차(시간 및 분)를 효율적으로 계산하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-12-01 07:37:10
원래의
566명이 탐색했습니다.

How Can I Efficiently Calculate the Time Difference in Hours and Minutes Between Two Pandas DataFrame Columns?

두 Pandas 열 사이의 시간 차이를 시와 분 단위로 계산

DataFrame에서 두 날짜 열 사이의 시간 차이를 확인하는 것은 다음과 같은 경우에 유용할 수 있습니다. 다양한 응용 프로그램. 그러나 빼기 연산자를 사용하는 표준 접근 방식에서는 날짜가 포함된 datetime.timedelta 개체가 생성됩니다. 이를 시간과 분으로 변환하려면 as_type 메서드를 활용할 수 있습니다.

DataFrame에 fromdatetodate는 각각 시작 시간과 종료 시간을 나타냅니다. 빼기 연산자를 사용하여 다음과 같이 시차를 얻습니다.

import pandas as pd

data = {'todate': [pd.Timestamp('2014-01-24 13:03:12.050000'), pd.Timestamp('2014-01-27 11:57:18.240000'), pd.Timestamp('2014-01-23 10:07:47.660000')],
        'fromdate': [pd.Timestamp('2014-01-26 23:41:21.870000'), pd.Timestamp('2014-01-27 15:38:22.540000'), pd.Timestamp('2014-01-23 18:50:41.420000')]}

df = pd.DataFrame(data)
df['diff'] = df['fromdate'] - df['todate']
로그인 후 복사
일을 포함하는 다음과 같은 출력이 제공됩니다.

                    todate                 fromdate                    diff
0 2014-01-24 13:03:12.050  2014-01-26 23:41:21.870  2 days 10:38:09.820000
1 2014-01-27 11:57:18.240  2014-01-27 15:38:22.540  0 days 03:41:04.300000
2 2014-01-23 10:07:47.660  2014-01-23 18:50:41.420  0 days 08:42:53.760000
로그인 후 복사
시차를 시간으로 변환하려면 분,

as_type 메소드를 사용하여 datetime.timedelta 객체를 timedelta64 특정 측정 단위가 있는 객체:

df['diff_hours'] = df['diff'].astype('timedelta64[h]')
로그인 후 복사
이 결과는 다음과 같습니다.

                    todate                 fromdate                  diff  diff_hours
0 2014-01-24 13:03:12.050  2014-01-26 23:41:21.870  2 days 10:38:09.820  58
1 2014-01-27 11:57:18.240  2014-01-27 15:38:22.540  0 days 03:41:04.300   3
2 2014-01-23 10:07:47.660  2014-01-23 18:50:41.420  0 days 08:42:53.760   8
로그인 후 복사
보시다시피

diff_hours 이제 열에 두 날짜 간의 시차가 시간 단위로 포함됩니다.

위 내용은 두 Pandas DataFrame 열 사이의 시차(시간 및 분)를 효율적으로 계산하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿