팬 다스 위즈 비즈
기능 은
interpolate
입니다.
method='time'
에 해당
시간 인덱스의 간격이 동일합니까?
기본 예는 다음과 같습니다 :
method='linear'
'time'과 'linear'의 차이는 시간 인덱스의 간격이 동일하지 않은 경우에만 발생합니다.
even_index = pd.date_range('2019-02-20 10:00 am',
'2019-02-20 2:00 pm', freq='1 h')
values = [10, np.nan, 30, np.nan, 50]
pd.DataFrame(values, index=even_index).interpolate(method='time')
0
2019-02-20 10:00:00 10.0
2019-02-20 11:00:00 20.0
2019-02-20 12:00:00 30.0
2019-02-20 13:00:00 40.0
2019-02-20 14:00:00 50.0
pd.DataFrame(values, index=even_index).interpolate(method='linear')
0
2019-02-20 10:00:00 10.0
2019-02-20 11:00:00 20.0
2019-02-20 12:00:00 30.0
2019-02-20 13:00:00 40.0
2019-02-20 14:00:00 50.0
내 질문은 이것이 항상 유지되는지 여부입니다. 간격이 같은 시간 인덱스
uneven_index = pd.to_datetime(['2019-02-20 10:00 am',
'2019-02-20 10:30 am', '2019-02-20 12:30 pm',
'2019-02-20 1:30 pm', '2019-02-20 2:00 pm'])
pd.DataFrame(values, index=uneven_index).interpolate(method='time')
0
2019-02-20 10:00:00 10.000000
2019-02-20 10:30:00 14.000000
2019-02-20 12:30:00 30.000000
2019-02-20 13:30:00 43.333333
2019-02-20 14:00:00 50.000000
pd.DataFrame(values, index=uneven_index).interpolate(method='linear')
0
2019-02-20 10:00:00 10.0
2019-02-20 10:30:00 20.0
2019-02-20 12:30:00 30.0
2019-02-20 13:30:00 40.0
2019-02-20 14:00:00 50.0
로 가정 할 수 있습니까?
항상 선형 보간을 수행합니까?
method='time'
-
답변 # 1
- python - 데이터 프레임을 병합하고 값을 채우는 방법
- python - Pandas에서 특정 열의 빈 값을 특정 값으로 바꾸는 방법은 무엇입니까?
- pandas - Python 람다 여러 기간
- python - CSV에서 중복 타임 스탬프 제거
- python - 2 개의 개별 데이터 프레임에서 정렬되지 않은 목록의 2 개 열을 비교하는 방법은 무엇입니까?
- pandas - python - 테이블에서 문자열과 관련된 최대 값을 반환하는 방법
- python - pandas - 열 하위 집합에 필터 적용
- python - 일부 행이 다른 데이터 프레임에있는 단일 행의 확장 된 버전 인 새 데이터 프레임 만들기
- python - Dataframe을 수정하는 Pandas 루틴
- python - 다른 행이있는 계산 된 열을 데이터 프레임에 추가하려면 어떻게해야합니까?
그렇습니다
문서에서 :
와이즈 비즈따라서 색인의 간격이 균등하고 적절한 방법을 사용하는 경우 (예에서 시간 색인의 경우 '시간'방법이지만 같은 간격의 값을 가진 숫자 색인의 경우 '색인'방법 일 수도 있음), 실제로 같은 결과를 얻게됩니다.