Pandas가 데이터프레임에서 순차적 행 값 계산을 적용
Pandas 데이터프레임으로 작업할 때 값을 사용해야 하는 상황이 발생할 수 있습니다. 계산에서 이전 행의 그러나 이는 특히 동일한 적용 함수 내에서 이전 값도 계산되는 경우 문제가 될 수 있습니다.
다음 데이터 프레임을 고려하세요.
Index_Date A B C D ================================ 2015-01-31 10 10 Nan 10 2015-02-01 2 3 Nan 22 2015-02-02 10 60 Nan 280 2015-02-03 10 100 Nan 250
새 열 C를 생성하려고 합니다. , 여기서:
적용 기능과 if-else 조건이 있는 Shift 사용은 키 오류로 인해 작동하지 않을 수 있습니다. 대신 다음 단계를 따를 수 있습니다.
1단계: 파생 값 초기화
먼저 첫 번째 행의 C 값을 D와 동일하게 설정합니다.
df.loc[0, 'C'] = df.loc[0, 'D']
2단계: 반복 및 계산
다음으로 나머지 행을 반복하고 이전 행의 C 값을 사용하여 C를 계산합니다.
for i in range(1, len(df)): df.loc[i, 'C'] = df.loc[i-1, 'C'] * df.loc[i, 'A'] + df.loc[i, 'B']
결과:
Index_Date A B C D 0 2015-01-31 10 10 10 10 1 2015-02-01 2 3 23 22 2 2015-02-02 10 60 290 280 3 2015-02-03 10 100 3000 250
위 내용은 적용 및 이동을 사용하여 Pandas DataFrame에서 연속 행 값을 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!