Pandas: 타임스탬프를 기준으로 dataframe 행을 선택하는 방법


다음 기본 구문을 사용하여 Pandas DataFrame의 두 타임스탬프 사이에서 행을 선택할 수 있습니다.

 df[(df[' tstamp '] > ' 2022-10-25 04:30:00 ') & (df[' tstamp '] < ' 2022-10-27 11:00:00 ')]

이 구문은 tstamp 에 이미 datetime 유형이 있다고 가정합니다.

그렇지 않은 경우 다음 구문을 사용하여 날짜/시간 열로 변환할 수 있습니다.

 df[' tstamp '] = pd. to_datetime (df[' tstamp '])

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: 타임스탬프를 기준으로 Pandas DataFrame 행 선택

소매점 판매 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정해 보겠습니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' tstamp ': ['2022-10-25 04:00:00', '2022-10-25 11:55:12',
                                 '2022-10-26 02:00:00', '2022-10-27 10:30:00',
                                 '2022-10-27 14:25:00', '2022-10-28 01:15:27'],
                   ' sales ': [18, 22, 19, 14, 14, 11]})

#view DataFrame
print (df)

                tstamp sales
0 2022-10-25 04:00:00 18
1 2022-10-25 11:55:12 22
2 2022-10-26 02:00:00 19
3 2022-10-27 10:30:00 14
4 2022-10-27 14:25:00 14
5 2022-10-28 01:15:27 11

다음 두 타임스탬프 사이의 행만 선택한다고 가정해 보겠습니다.

  • 2022-10-25 04:30:00
  • 2022-10-27 11:00:00

이를 위해 다음 구문을 사용할 수 있습니다.

 #convert timestamp column to datetime dtype
df[' tstamp '] = pd. to_datetime (df[' tstamp '])

#select rows between two timestamps
df[(df[' tstamp '] > ' 2022-10-25 04:30:00 ') & (df[' tstamp '] < ' 2022-10-27 11:00:00 ')]

	tstamp sales
1 2022-10-25 11:55:12 22
2 2022-10-26 02:00:00 19
3 2022-10-27 10:30:00 14

우리가 지정한 두 타임스탬프 사이의 줄만 선택된다는 점에 유의하세요.

또한 날짜 값만 사용하여 타임스탬프별로 행을 선택할 수 있습니다.

예를 들어 다음 코드를 사용하여 타임스탬프가 2022-10-27보다 큰 모든 행을 선택할 수 있습니다.

 #convert timestamp column to datetime dtype
df[' tstamp '] = pd. to_datetime (df[' tstamp '])

#select rows with timestamp after 2022-10-27
df[df[' tstamp '] > ' 2022-10-27 ']

	tstamp sales
3 2022-10-27 10:30:00 14
4 2022-10-27 14:25:00 14
5 2022-10-28 01:15:27 11

tsamp 열의 값이 2022-10-27보다 이후인 행만 선택됩니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

Pandas에서 DateTime을 날짜로 변환하는 방법
Pandas에서 열을 DateTime으로 변환하는 방법
Pandas DataFrame을 날짜별로 정렬하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다