세 줄 요약:
이번 챕터는 판다스의 데이터프레임을 이용하여 데이터를 정제하고 없는 값들을 채워 넣는 과정을 거친다.
우리 혼공분석님은 얼마나 열심히 판다스 공식 문서를 열심히 뒤져 봤을꼬...
지난 챕터의 웹 API를 사용하고 웹에서 데이터를 긁어 오는 것도 중요해 보였지만, 개인적으로 이번 챕터가 가장 중요해 보이고 어려웠다.
판다스 배열 성격의 객체는 어떤 값과 비교할 때 원소별 비교를 이용하여 자동으로 배열에 있는 모든 원소와 하나씩 비교
판다스에서 데이터 프레임의 행이나 열을 삭제 (axis=1
로 지정하면 열 삭제)
inplace=True
매개변수: 현재 선택한 데이터프레임을 바로 수정
기본적으로 NaN
이 하나 이상 포함된 행이나 열을 삭제
how='all'
모든 값이 NaN인 열을 삭제
[ ] 연산자에 슬라이싱이나 불리언 배열을 전달하면 행을 선택
duplicated()
메서드 - 기본적으로 데이터프레임에 있는 모든 열을 기준으로 중복된 행을 찾습니다.
subset
일부 열을 기준으로 중복된 행을 찾기 위해 기준 열을 리스트로 전달
keep=False
중복된 모든 행을 True로 표시
groupby()
메서드에 by
매개변수에 행을 합칠 때 기준이 되는 열을 지정
NaN이 포함되어 있는 행이 합계에서 빠지는 것을 막기 위해 dropna=False
전달
~
연산자와 copy()
메서드를 사용하는 방법 배우기!
set_index()
메서드를 사용하여 지정한 열을 인덱스로 설정
inplace=True
매개변수를 전달하면 새로운 데이터프레임을 반환하지 않고 기존 데이터프레임을 수정
업데이트가 제대로 되었다면 인덱스 열을 해제 reset_index()
메서드
다 정제 후 기존 데이터프레임과 동일한 지 비교 - equals()
메서드
info()
메서드
데이터 타입을 지정할 때 astype()
메서드
fillna()
메서드에 원하는 값을 전달하면 NaN을 대체할 수 있습니다.
replace()
메서드는 NaN은 물론 어떤 값도 바꿀 수 있는 편리한 메서드!
replace(원래 값, 새로운 값)
replace([원래 값1, 원래 값2], [새로운 값1, 새로운 값2])
replace({열 이름: 원래 값}, 새로운 값)
replace()
메서드에 regex=True
매개변수 전달
판다스 시리즈 객체는 str 속성 아래 다양한 문자열 처리 함수를 제공하는 데, 그중 contains()
메서드는 시리즈나 인덱스에서 문자열 패턴을 포함하고 있는지 검사
na=True
로 지정하여 누락된 행을 True로 표시
requests
패키지와 BeautifulSoup
패키지를 이용
많은 도움이 되었습니다, 감사합니다.