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

Python - Pandas에서 NAN 값을 평균으로 채우는 방법은 무엇입니까?

<시간/>

평균의 경우 mean() 함수를 사용하십시오. NaN으로 열의 평균을 계산하고 fillna()를 사용하여 NaN 값을 평균으로 채웁니다.

먼저 필요한 라이브러리를 가져오도록 합시다 -

pdimport numpy로 np로 팬더 가져오기

2개의 열과 일부 NaN 값이 있는 DataFrame을 만듭니다. numpy np.NaN −

를 사용하여 이 NaN 값을 입력했습니다.
dataFrame =pd.DataFrame( { "자동차":['BMW', '렉서스', '렉서스', '머스탱', '벤틀리', '머스탱'],"단위":[100, 150, np .NaN, 80, np.NaN, np.NaN] })

여기에서 단위 열에 대해 NaN으로 열 값의 평균을 찾습니다. 따라서 단위 열에는 100, 150 및 80이 있습니다. 따라서 평균은 110 −

가 됩니다.
meanVal =dataFrame['단위'].mean()

NaN을 그것이 위치한 열의 평균으로 교체하십시오. 위에서 계산한 평균은 110이므로 NaN 값은 110 -

으로 대체됩니다.
dataFrame['단위'].fillna(value=meanVal, inplace=True)

예시

다음은 코드입니다 -

판다를 pdimport numpy로 np로 가져오기# Create DataFramedataFrame =pd.DataFrame( { "Car":['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang']," Units":[100, 150, np.NaN, 80, np.NaN, np.NaN] })print"DataFrame ...\n",dataFrame# NaN이 있는 열 값의 평균 찾기, 즉 여기에서 Units 열의 경우 # 그래서 Units 열은 100, 150, 80을 가집니다. 따라서 평균은 110meanVal =dataFrame['Units'].mean()# NaN을 해당 열의 평균으로 교체# 위에서 계산한 평균은 110이므로 NaN 값은 110dataFrame['Units' ].fillna(value=meanVal, inplace=True)print"\nNaN 값을 평균으로 채운 후 업데이트된 데이터 프레임...\n",dataFrame

출력

이것은 다음과 같은 출력을 생성합니다 -

DataFrame ... Car Units0 BMW 100.01 Lexus 150.02 Lexus NaN3 Mustang 80.04 Bentley NaN5 Mustang NaN NaN 값을 평균으로 채운 후 데이터 프레임 업데이트... Car Units0 BMW 100.01 Lexus 150.02 Lexus Mustang .180.0