NaN이 있는 DataFrame을 고려하세요:
In [1]: import pandas as pd df = pd.DataFrame([[1, 2, 3], [4, None, None], [None, None, 9]]) In [2]: df 0 1 2 0 1 2 3 1 4 NaN NaN 2 NaN NaN 9
목표는 각 NaN을 가장 가까운 NaN으로 대체하는 것입니다. 그 위의 동일한 열에 NaN이 아닌 값이 있습니다. 첫 번째 행에 NaN이 포함되지 않는다고 가정합니다.
이를 달성하는 효율적인 방법은 DataFrame의 fillna 메서드를 사용하는 것입니다.
In [3]: df.fillna(method='ffill') 0 1 2 0 1 2 3 1 4 2 3 2 4 2 9
fillna 메서드는 다음을 사용합니다. NaN을 마지막으로 유효한 관측값으로 바꾸는 정방향 채우기(ffill) 전략
반대의 작업을 수행하려면 bfill 메서드(역방향 채우기)를 사용할 수 있습니다.
In [4]: df.fillna(method='bfill') 0 1 2 0 1 2 3 1 4 4 3 2 9 9 9
fillna 메서드는 DataFrame을 내부에서 수정하지 않습니다. 원본 DataFrame을 업데이트하려면 inplace=True:
In [5]: df.fillna(method='ffill', inplace=True) In [6]: df 0 1 2 0 1 2 3 1 4 2 3 2 4 2 9로 설정하세요.
위 내용은 Pandas DataFrame의 NaN 값을 앞이나 뒤의 값으로 채우는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!