Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

인덱스 값을 기반으로 데이터 프레임 시계열 데이터를 자르는 프로그램 작성

<시간/>

시계열 데이터가 있는 데이터 프레임이 있고 잘린 데이터의 결과는 다음과 같다고 가정합니다.

before truncate:
 Id time_series
0 1 2020-01-05
1 2 2020-01-12
2 3 2020-01-19
3 4 2020-01-26
4 5 2020-02-02
5 6 2020-02-09
6 7 2020-02-16
7 8 2020-02-23
8 9 2020-03-01
9 10 2020-03-08
after truncate:
 Id time_series
1 2 2020-01-12

해결책

이 문제를 해결하기 위해 다음 단계를 따릅니다. -

  • 데이터 프레임을 정의합니다.

  • start='01/01/2020', 기간 =10 안에 date_range 함수를 만들고 freq ='W'를 할당합니다. 주어진 시작 날짜부터 다음 주 시작 날짜까지 10개의 날짜를 생성하고 df['time_series']로 저장합니다.

df['time_series'] = pd.date_range('01/01/2020',
                                    periods=10,
                                    freq='W')
  • before='01/01/2020', after='10/02/2020'과 같이 일부 인덱스 값 내부에 df.truncate() 함수를 적용하고 결과로 저장합니다.

result = df.truncate(before='01/01/2020',after='10/02/2020')

예시

더 나은 이해를 위해 아래 구현을 살펴보겠습니다. −

import pandas as pd
d = {'Id': [1,2,3,4,5,6,7,8,9,10]}
df = pd.DataFrame(d)
df['time_series'] = pd.date_range('01/01/2020',
                                    periods=10,
                                    freq='W')

print(df)
result = df.truncate(before='01/01/2020',after='10/02/2020')
print(result)

출력

before truncate:
 Id time_series
0 1 2020-01-05
1 2 2020-01-12
2 3 2020-01-19
3 4 2020-01-26
4 5 2020-02-02
5 6 2020-02-09
6 7 2020-02-16
7 8 2020-02-23
8 9 2020-03-01
9 10 2020-03-08
after truncate:
 Id time_series
1 2 2020-01-12