본문 바로가기
프로그래밍/Python

[python(파이썬)]dataframe 호출시 na 살리기

by Mr.noobiest 2022. 7. 22.

pandas의 read_csv()를  할때 분명히 Nan이 아닌데도 Nan이 나오는 경우가 있어  검색해보았다.

 

 

검색 결과 na / Na라고 적혀있을경우 read_csv에서는 이를 Nan이라고 판단하고 모두 Nan값으로변경해버린다.

col_1 col_2 col_3 col_4 col_5 col_6
0 NA 값_1 값_2_1   1
1 NA 값_2 값_2_2   1
2 NA 값_3 값_2_3   1
3 NA 값_4 값_2_4   1
4 NA 값_5 값_2_5   1
5 NA 값_6 값_2_6 10 1
6 NA 값_7 값_2_7 2 1

위 csv파일을 read_csv()로 불러오면 아래처럼  변경되어 버린다.(NA  -> Nan)

col_1 col_2 col_3 col_4 col_5 col_6
0 Nan 값_1 값_2_1   1
1 Nan 값_2 값_2_2   1
2 Nan 값_3 값_2_3   1
3 Nan 값_4 값_2_4   1
4 Nan 값_5 값_2_5   1
5 Nan 값_6 값_2_6 10 1
6 Nan 값_7 값_2_7 2 1

 

그렇다고  replace를 쓰기에는 너무  귀찮다.

 

read_csv를 할때 Na를 살리는 명령어는 다음과 같다.

 

 

import pandas as  pd

test=pd.read_csv('.csv파일의 경로',na_filter=False)

 

na_filter=False를 써주면 Na/na/NA를  Nan으로 자동 변경해주는 기능이  꺼지고 해당 String을 유지한 상태로 Dataframe으로 불러온다.

 

 

 

728x90
반응형