import numpy as np
from numpy import nan as NA
null(결측값) 표현 방식
None도 null이다.
obj1 = Series([1,2,3,None,5]) | |
obj2 = Series([1,2,3,np.nan,5]) |
|
obj3 = Series([1,2,3,NA,5]) |
|
결측값들의 데이터 타입
type(None)
type(np.nan)
type(NA)
null 체크하는 방법
obj1.isnull()
obj2.isnull()
obj3.isnull()
null이 아닌것 체크
obj1.notnull()
obj2.notnull()
obj3.notnull()
null인것만 뽑아내기
obj1[obj1.isnull()]
null이 아닌것만 뽑아내기
obj1[obj1.notnull()]
pandas로 null 다루기
isnull : null 체크 방법
null인것 |
|
null이 아닌것 |
fillna() : null값 채우기
obj1 = obj1.fillna(0) #미리보기
obj1
dropna() : na값이 있는 행을 제거(!!주의해서 사용!!)
obj2 = obj2.dropna() #미리보기
obj2
df = DataFrame([[1,2,3],[1,None,NA],[NA,NA,NA],[np.nan,2,3]])
df
열마다 다른 값으로 채우고 싶을때
fillna({}) : 특정한 열을 무엇으로 채울지({열이름 : 채울값})
df.fillna({0:0,1:10,2:20})
앞뒤의 값을 기준으로 채우기
df.fillna(method = 'ffill') # 앞의값 채우기
df.fillna(method = 'pad') # 앞의값 채우기
df.fillna(method = 'bfill') # 뒤의값 채우기
df.fillna(method = 'backfill') # 뒤의값 채우기
dropna() : na가 있는 행은 전부 제거
df.dropna()
행이 NA로 되어있는 행만 삭제
df.dropna(how = 'all', axis = 0)
열이 NA로 되어있는 열만 삭제
df[2] = NA
df.dropna(how = 'all', axis = 1)
'컴퓨터 > 파이썬' 카테고리의 다른 글
파이썬(Python) - merge와 join (0) | 2020.03.12 |
---|---|
파이썬(Python) - Pandas의 그룹함수들 (0) | 2020.03.11 |
파이썬(Python) - RANK (0) | 2020.03.10 |
파이썬(Python) - Series와 DataFrame의 정렬 (2) | 2020.03.10 |
파이썬(Python) - Pandas로 CSV 파일 읽기 (0) | 2020.03.10 |