2014-10-03 4 views
0

팬더 시간 시리즈를 사용하여 아래 표시된 메트릭에 대한 보간 값을 얻으려고합니다.팬더로 샘플 연도 사이에 값을 보간

test.csv

year,metric 
2020,290.72 
2025,221.763 
2030,152.806 
2035,154.016 

코드

import pandas as pd 
df = pd.read_csv('test.csv', parse_dates={'Timestamp': ['year']}, 
        index_col='Timestamp') 

지금까지 내가이 인덱스로 매년 월 1 나에게 시계열을 제공 이해. 이제 누락 된 연도 (2021, 2022, 2023, 2024, 2026 등)를 기입해야합니다.

팬더에서이 작업을 수행 할 수있는 방법이 있습니까?

답변

0

보간은 값이없는 값이 채워지는 것으로 나타났습니다. 위의 경우 필자가해야 할 일은 색인을 다시 작성하여 간격이 12 개월이되도록하는 것입니다.

# reindex with interval 12 months (M: month, S: beginning of the month) 
df_reindexed = df.reindex(pd.date_range(start='20120101', end='20350101', freq='12MS')) 

# method=linear works because the intervals are equally spaced out now 
df_interpolated = df_reindexed.interpolate(method='linear') 
0

새로운 버전의 팬더를 사용하는 경우 DataFrame 개체에 갭을 채우는 데 사용할 수있는 보간 방법이 있어야합니다.

+0

그건 내 직감이었습니다. 'method = time'을 사용합니다. 그래도 연간 간격을 지정하는 방법을 알지 못했습니다. – poezn