데이터를 가지고 분석하기 전, 결측치가 있다면 이를 삭제할지 다른 값으로 대체할지 결정해야 하는데요,
같은 행 다른 열에 있는 값으로 결측치를 채우는 방법에 대해서 살펴보도록 하겠습니다.
- 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
'BLOG > 데이터분석' 카테고리의 다른 글
[데이터분석] 데이터프레임 : 하나의 데이터 다른 값으로 바꾸기 (1) - loc (0) | 2021.03.16 |
---|---|
[데이터분석] 데이터프레임 : 특정 열(칼럼)에 있는 데이터를 연산해서 결측치(NaN) 채우기 - fillna() (0) | 2021.03.15 |
[데이터분석] 데이터프레임 : 데이터프레임 사이에 다른 데이터프레임 삽입하기 - concat() (0) | 2021.03.15 |
[데이터분석] 데이터프레임 : 다중 인덱스 설정하는 방법 - set_index() (0) | 2021.03.15 |
[데이터분석] 데이터프레임 : 정렬 후 인덱스 재정렬 하기 - reset_index(drop = True) (0) | 2021.03.15 |