일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 소수
- c
- pandas
- c++
- SK바이오사이언스
- 통신사할인
- 상태
- skt membership
- series
- Flexbox
- Photoshop
- Codility
- 포토샵
- Gap
- CSS
- Design Pattern
- 수학
- align-items
- 백준
- dataframe
- 알고리즘
- grid
- stl
- 에라토스테네스의 체
- margin
- spring
- Javascript
- Prefix Sums
- 확률
- 강화학습
Archives
- Today
- Total
sliver__
[Pandas 데이터 분석] Chapter 5 - 데이터 사전 처리 본문
728x90
[누락 데이터 처리]
- 데이터프레임에는 원소 데이터 값이 종종 누락되는 경우가 있다.
- 일반적으로 유효한 데이터 값이 존재하지 않는 누락 데이터를 NaN(Not a Number)으로 표시한다.
- 누락 데이터 확인
isnull() | 누락 데이터면 True를 반환, 아니면 False를 반환 |
notnull() | 유효 데이터면 True를 반환, 아니면 False를 반환 |
- 누락 데이터 제거
- 열을 삭제하면 attribute를 제거
- 행을 삭제하면 record를 제거
- 누락 데이터 치환
- 누락된 데이터를 삭제하는 것이 아니라 평균값, 최빈값 등을 활용하여 값을 대체한다.
- fillna() 메소드로 처리
- 새로운 객체를 반환하기 때문에 원복 객체를 변환하려면 inplace=True 옵션 추가
- method = 'ffill' : 이전 행의 데이터를 복사
- method = 'bfill' : 다음 행의 데이터를 복사
[중복 데이터 처리]
- 하나의 데이터 셋에서 동일한 관측값이 2개 이상 중복되는 경우 삭제해야한다.
- 분석 결과를 왜곡할 수 있다.
- 중복 데이터 확인
- duplicated() : 전에 나온 행들과 비교하여 중복되는 행이면 True, 처음 나오는 행에 대해서는 False를 반환
- 중복 데이터 제거
- drop_duplicates() : 중복되는 행을 제거
- inplace = True 옵션을 추가하면 원본 객체를 변경
- subset = ['열 이름',..] 리스트를 전달하면 해당 열을 기준으로 중복을 판단한다. 모든 열의 중복이 전부 True인 경우에 행을 삭제한다.
[데이터 표준화]
- 단위환산
- 같은 데이터셋 안에서 서로 다른 측정 단위를 사용한다면 일관성에 문제가 있다 => 동일하게 변경필요
[범주형 데이터 처리]
- 구간 분할
- 데이터 분석 알고리즘에 따라서는 연속 데이터를 일정 구간으로 나누어 분석하는 것이 효율적인 경우가 있다.
- 연속 변수를 일정한 구간으로 나누고 범주형 이산 변수로 변환하는 과정을 구간 분할이라고 한다.
- cut() 함수를 이용
- 더미 변수
- 범주를 나누었지만 컴퓨터가 인식 가능한 입력값으로 변환해야 한다.
- 숫자 0 또는 1로 표현되는 더미 변수를 사용한다.
- 0과 1로만 구성되는 원핫벡터로 변환한다고 해서 원핫인코딩이라고 부른다.
- get_dummies() : 범주형 변수의 모든 고유값을 새로운 더미변수로 변환
[정규화]
- 숫자 데이터의 경우 상대적인 크기 차이를 제거할 필요가 있다.
- 정규화 과정을 거친 데이터의 범위는 0~1 또는 -1 ~ 1.
[시계열 데이터]
- 판다스는 시계열 데이터를 다루는 여러 가지 유용한 기능을 제공한다.
- 시계열 데이터를 데이터프레임의 행 인덱스로 사용하면, 시간으로 기록된 데이터를 분석하는 것이 매우 편리하다.
- 특정한 시점을 기록하는 Timestamp / 두 시점 사이의 일정한 기간을 나타내는 Period가 있다.
- 다른 자료형을 시계열 객체로 변환
- 문자열을 Timestamp로 변환
- to_datetime() : 문자열 등 다른 자료형을 판다스 timestamp를 나태내는 datatime64 자료형으로 변환 가능하다.
- Timestamp를 Period로 변환
- to_period() : 일정한 기간을 나타내는 Period 객체로 Timestamp 객체를 변환한다.
- freq 옵션에 기준이 되는 기간을 설정
- 문자열을 Timestamp로 변환
- 시계열 데이터 만들기
- Timestamp 배열
- data_range() : 여러 개의 날짜가 들어 있는 배열 형태의 시계열 데이터를 만들 수 있다.
- Period 배열
- period_range() : 여러 개의 기간이 들어 있는 시계열 데이터를 만든다.
- Timestamp 배열
[시계열 데이터 활용]
- 날짜 데이터 분리
- 연-월-일 날짜 데이터를 분리하여 추출할 수 있다.
- to_datetime()으로 만든 열의 .dt.{year/month/dat} 로 선택이 가능하다.
728x90
'CS > Pandas' 카테고리의 다른 글
[Pandas 데이터 분석] Chapter 7- 머신러닝 데이터 분석 (0) | 2022.03.01 |
---|---|
[Pandas 데이터 분석] Chapter 6- 데이터 프레임의 다양한 응용 (0) | 2022.02.27 |
[Pandas 데이터 분석] Chapter 3 - 데이터 살펴보기(2) (0) | 2022.02.23 |
[Pandas 데이터 분석] Chapter 3 - 데이터 살펴보기(1) (0) | 2022.02.23 |
[Pandas 데이터 분석] Chapter 2 - 데이터 입출력 (0) | 2022.02.21 |
Comments