티스토리 뷰
데이터 전처리를 위해서, 조건절에서 None을 기준으로 데이터를 판단하는 경우가 많다.
하지만, Pandas로 데이터프레임을 불러오는 과정에서 Null 값의 처리가 제대로 되지않으면 원하는 결과를 낼 수 없다.
보통 np.NaN 또는 None을 기준으로 null 값 처리하기 때문에 이 글은 None값 처리를 하는 코드의 예시이다.
import pandas as pd
import numpy as np
# 데이터 불러오기
path = r'파일경로'
df = pd.read_csv(path,keep_default_na=False, # 빈 값은 None값으로 불러오기
na_values = ['?', '??', 'N/A', 'NA', 'nan', 'NaN', '-nan', '-NaN', 'null','None', ' ',""], #최대한 다양한 값을 null 값으로 인식해 전처리를 줄이기
dtype={'컬럼명':str}) # 문자열로 인식해야하는 컬럼은 dtype을 지정해주세요.
# None 처리
df = df.replace('', np.nan) #빈 문자열을 NaN로 변환
df = df.replace({np.nan: None}) #NaN을 None으로 변환
활용하기 isnull, notnull
# 셀의 값이 None인 것만 출력
df[df['컬럼명'].isnull()]
# 셀의 값이 None이 아닌 것만 출력
df[df['컬럼명'].notnull()]
참고 블로그
- pd.read_csv 시 NaN 값 None으로 바꾸기
- Python-numpy-NaN을-None으로-변환하기
- [Pandas] read_csv에서는 꼭 dtype을 정의하자
반응형
'파이썬(Python)&판다스(Pandas)&Polars' 카테고리의 다른 글
[Pandas] 여러 파일의 행 수, 열 수를 하나의 데이터 프레임으로 만들기(listdir(), shape()) (0) | 2023.02.02 |
---|---|
[Pandas] 서로 다른 데이터프레임에서 특정 값을 매핑해 새로운 컬럼 만들기 (0) | 2023.01.10 |
[Pandas] combine_first - 두 컬럼 중 먼저 나온 값을 기준으로 새로운 컬럼 생성하기 (2) | 2022.10.24 |
[Pandas] literal_eval - 문자열 리스트를 list type으로 변환하기 (1) | 2022.10.24 |
[Pandas] 한글 깨짐 방지를 위해 인코딩은 'UTF-8-SIG'로 저장하기 (1) | 2022.10.24 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- TextRank
- 3d-force-graph
- Vue3
- 키워드추출
- SPARQL
- python
- knowlegegraph
- pandas
- MongoDB
- 지식그래프임베딩
- p-tuing
- Encoding
- 지식그래프
- PostgreSQL
- python'
- Postgis
- LLM
- vscode
- volar
- knowledgegraph
- difflib
- psycopg
- rdflib
- polars
- KRworkrank
- hadoop
- elasticsesarch
- v-tooltip
- writerow
- PEFT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함