안 적어놓으면 내가 잊어버릴 것 같아서
파이썬 데이터프레임 행, 열 삭제하는 실습을 진행해보겠다
일단 데이터프레임을 만들기 전에
라이브러리 2개를 부르고
import pandas as pd
import pandas as np
먼저 raw_data를 만들고
raw_data = {'col0':[1,2,3, np.nan],
'col1':[5,6,7,8],
'col2':[8,9,10,11]}
그리고 raw_date print 해보면 이렇게 나온다
print(raw_data)
>> {'col0': [1, 2, 3, nan], 'col1': [5, 6, 7, 8], 'col2': [8, 9, 10, 11]}
이제 데이터 프레임으로 만든다
df = pd.DataFrame(raw_data)
print(df)
>> ![](https://velog.velcdn.com/images/drsky1/post/f61aca7d-7602-4a9f-beb9-9e9bc86f0c72/image.png)
이렇게 데이터프레임이 만들어졌다면
미리 만들어놓은 결측치 값이 표처럼 보인다
1열 3행에 nan인 결측치 값이 보일 것이다
이걸 제거하는 방법으로 dropna 를 사용할텐데
dropna의 default(기본)값은 axis = 0 (가로) 이므로 df.dropna()를 하면 결측치 값이 있는 행이 삭제된다
df.dropna(axis=0)
# 위 아래 코드가 같은 결과를 나타낸다
df.dropna()
>> ![](https://velog.velcdn.com/images/drsky1/post/bed4852f-1cd4-41e6-8337-1d9698b0f469/image.png)
이렇게 행이 삭제 된 걸 확인 후
다시 df를 찍어보면 결측치 값이 그대로 있는 걸 볼 수 있는데
inplace=True를 하지 않아서 그렇다
df.dropna(inplace=True)
print(df)
하게 되면 이제 완전히 삭제된 것이므로 df 찍었을 때 결측치 값이 완전히 제거 된다
dropna() 기본이 행 삭제였으니 열을 삭제하려면 반드시 axis = 1 을 써줘야한다
df.dropna(axis=1)
>>![](https://velog.velcdn.com/images/drsky1/post/de53d471-9cb6-4dc5-ae15-050f75a314ea/image.png)
행을 삭제 했을 때 dropna()
열을 삭제 했을 때 dropna(axis=1)
이외에도 행과 열을 삭제하는 코드들이 있지만 일단 이것만 적어본다
p.s
실습은 코랩 or 주피터노트북으로 진행했다