본문 바로가기

Study history/ADP 실기 합격 기록26

ADP) 파이썬으로 푸는 ADP실기 데이터 분석전문가 모의고사 1회-(1) 『ADP 실기 데이터 분석 전문가』 모의고사 1회 정형 데이터마이닝 Q1) 연관규칙분석을 수행하기 위해 lotto 데이터셋을 transaction 데이터로 변환하시오. 단, 본 분석에서 로또번호가 추첨된 순서는 고려하지 않고 분석을 수행하도록 한다. 그리고 변환된 데이터에서 가장 많이 등장한 상위 10개의 로또번호를 막대그래프로 출력하고 이에 대해 설명하시오. R에는 as(data, 'transactions')라는 형태로 간편하게 데이터 구조를 트랜잭션 데이터로 변환할 수 있는데, 파이썬에는 이런 함수가 없다. 그래서 최대한 비슷하게 모양을 만들어보았다. pandas의 read_csv 함수로 csv파일을 데이터프레임으로 가지고 오고, numpy의 array 함수로 각 회차 로또 번호들만 각각 하나의 ar.. 2021. 12. 10.
ADP) 3-1. 전처리 2탄 (변수 변환; Feature Scaling 총정리 - 수치형/범주형) 전처리 1탄에서는 결측치, 이상값, 클래스 불균형 처리 방법들을 다뤘다. 이번 전처리 2탄에서는 수치형 변수변환에 대해 포스팅 하고자 한다. https://lovelydiary.tistory.com/409 ADP) 3-1. 전처리 1탄 (결측치, 이상값, 클래스 불균형 처리방법들) 결측치 처리 방법들 데이터에 있는 결측치들을 처리하는 여러가지 방법들이 있다. 결측값인 채로 처리: 결측값인 채로 모델링 가능한 모델들이 있다. (예: GBDT모델) Zero Imputation: 0으로 대치한다 lovelydiary.tistory.com 변수변환 (Feature Scaling) 변수변환이란, feature의 스케일을 바꾸는 feature 정규화를 의미한다. 입력 feature들의 스케일이 서로 크게 다른 상황.. 2021. 12. 9.
ADP) 3-4. 파이썬 그래프 총정리 - 1탄: 점그래프, 선그래프, 점선그래프, 막대그래프, 누적막대그래프 파이썬 matplotlib, seaborn 패키지를 활용한 그래프 그리기 아래와 같이 파이썬으로 그래프 그리기를 5탄에 걸쳐서 총정리를 해보고자 한다. 생각보다 오래 걸렸지만, 다양한 플롯팅 패키지들과 함수들을 확인할 수 있었다. 시간 시각화: 점그래프, 선그래프, 점선그래프, 막대그래프, 누적막대그래프 분포 시각화: 파이그래프, 도넛차트, 트리맵, 모자이크 플롯, 누적 연속 그래프, 줄기잎그림, 박스 플롯/바이올린 플롯 관계 시각화: 스캐터 플롯(산점도), 버블차트, 히스토그램, 페어플롯 비교 시각화: 히트맵, 체르노프 페이스, 스타차트(거미줄차트, 방사형 차트), 평행좌표계, 다차원척도법 기타: 서브플롯, 두개의 Y축을 가진 그래프 그리기 시간 시각화 - 1. 점그래프, 선그래프, 점선그래프 시계열 .. 2021. 12. 2.
ADP) 3-3. 파이썬으로 리샘플링, 데이터분할 - 부트스트랩, 일반적 데이터 분할(훈련/테스트), 홀드아웃방법, K-fold 교차분석 파이썬 데이터 리샘플링, 분할 방법들 부트스트랩 모집단에서 추출한 표본에 대해서 또 다시 재표본을 여러번 추출하여 모델을 평가하거나 데이터의 분포를 파악하는 재표본 추출방법이다. 샘플링을 할 때는 단순랜덤 복원 추출법을 사용하여 동일한 크기의 표본을 여러개 생성하므로, 특정 데이터가 여러 샘플에 포함될 수도 있고 혹은 어떠한 샘플에도 포함되지 않을수도 있다. 부트스트랩을 통해 100개의 샘플을 추출했을 때 샘플에 한번도 선택되지 않는 원데이터가 발생할 확률은 36.8%이다. 이러한 데이터를 OOB(out of bag)데이터라고 하며, OOB 데이터의 실제값과 예측값 사이의 오차로 정의되는 값을 OOB-error라고 한다. ensenble 기법들(Bagging, Boosting)에서 파라미터로 Bootst.. 2021. 12. 2.
ADP) 3-2. 파이썬으로 표본 추출: 단순랜덤 추출법, 계통추출법, 집락추출법, 층화추출법 파이썬으로 표본 추출 (Sampling) 하기 단순랜덤추출법 (simple random sampling) 각 샘플에 번호를 부여하여 임의의 n개를 추출하는 방법으로 각 샘플은 선택될 확률이 동일하다. 추출한 element를 다시 집어 넣어 추출하면 복원 추출, 다시 집어넣지 않고 추출하면 비복원 추출이다. pandas의 DataFrame으로 만든 데이터프레임 객체인 df에 .sample() 함수를 써서 전체 데이터 중 일부 샘플을 랜덤으로 추출할 수 있다. df.sample(n=2, replace=False)의 식으로 사용하는데, n은 추출할 샘플의 개수이고 replace는 샘플을 복원해서 뽑을지 여부이다. replace=False로 파라미터를 설정하면, 샘플을 뽑을 때마다 뽑은 샘플을 복원하지 않고 연.. 2021. 12. 2.