본문 바로가기

BLOG/데이터분석

[데이터분석] 데이터프레임 : 다른 열(칼럼)에 있는 값으로 결측치(NaN) 채우기 - fillna

 

데이터를 가지고 분석하기 전, 결측치가 있다면 이를 삭제할지 다른 값으로 대체할지 결정해야 하는데요,

같은 행 다른 열에 있는 값으로 결측치를 채우는 방법에 대해서 살펴보도록 하겠습니다.

 

 

- fillna() : 결측값(NaN) 채우기

먼저, 아래와 같은 데이터프레임(df)이 있다고 가정해보겠습니다.

 

	item	count	price1	price2
0	coffee	1	3000.0	3500
1	juice	5	4000.0	3500
2	ade	2	5000.0	4500
3	milk	1	NaN	2000
4	tea	3	4000.0	4500
5	water	2	1000.0	1000

 

위 데이터프레임을 보면 'price1' 칼럼에서 3번째 행에 결측값(NaN)이 있는 것을 확인할 수 있는데요,

fillna() 함수를 사용하여 'price2' 칼럼의 3번째 행에 있는 데이터로 채우는 코드는 다음과 같습니다.

 

df['price1'] = df['price1'].fillna(df['price2'])

 

위 코드를 보면 df 데이터프레임의 'price1' 칼럼에서 결측치가 있다면 'price2'에 있는 값으로 채운다는 것을 뜻합니다.

 

따라서 위 코드를 실행하고 데이터프레임을 출력하면 다음과 같이 'price2'에 있는 값이 채워지는 것을 확인할 수 있습니다.

 

	item	count	price1	price2
0	coffee	1	3000.0	3500
1	juice	5	4000.0	3500
2	ade	2	5000.0	4500
3	milk	1	2000.0	2000
4	tea	3	4000.0	4500
5	water	2	1000.0	1000