목록전체 글 (36)
nada
Series 생성 :: pd.Series( ) Reference Reference Pandas In Action import pandas as pd pd.Series( data = None, # 리스트(List) idnex = None, dtype = None ) Option data : 입력 데이터 집합(Set) Error가 → 리스트(List) 집합에서는 리스트와 같은 순서 개념이나 딕셔너리와 같은 연관 개념이 없음 → 판다스는 집합의 값을 저장하는 순서를 가정할 수 없음 index : 인덱스 레이블 할당 파이썬의 딕셔너리와 다르게 Series의 인덱스는 중복을 허용 (But, Index는 고유한 값이기 때문에 중복을 피하는 것이 좋음) dtype : 입력 데이터 형태 설정 import pandas ..
[toc] 파이썬과 데이터 다루기 1) 파이썬 자료형 I. 숫자형(Number) 숫자 형태로 구성된 자료형을 말함 정수형(Integer), 실수형(Floating point), 8진수(Octal), 16진수(Hexadecimal) 등이 있음 1. 정수형, 실수형 ## 정수형, 실수형 a = 123 b = - 123.4 a + b -0.40000000000000572. 8진수 0o[Number] # 8진수 c = 0o34 d = 0o24 c + d 483. 16진수 0x[Number] # 16진수 e = 0x2A f = 0xFF e + f II. 문자형(String) 문자나 단어 들으로 구성된 자료형 단일 인용표시(' ' : 작은 따옴표) or 이중 인용 표시(" " : 큰 따옴표) 1. 문..
DataFrame 중복제거 :: drop_duplicates df.drop_duplicates(subset = None, keep = False, inplace = False, ignore_index = False ) DF.drop_duplicates 데이터 프레임(Data Frame)에서 중복값을 제거하고 고유한 값을 남김 option subset : 열 레이블 또는 레이블 시퀀스 keep : 유지할 행 'first' : 중복되는 데이터 중 첫 번째 행 유지 'last' : 중복되는 데이터 중 마지막 번째 행 유지 False : 중복되는 데이터 전체 삭제 inplace : 대체 여부 True False ignore_index : 인덱스 재설정 True False import..
[TOC] 범주형 기말 프로젝트 1. 주제 I. 은행 고객 이탈 여부에 가장 많은 영향을 미치는 변수 탐색 II. Machine Learning 모형과 예측 비교 2. 데이터 설명 Kaggle Dataset(Credit Card Customers) https://www.kaggle.com/datasets/sakshigoyal7/credit-card-customers 약 10,000명의 고객의 정보(연령, 급여, 결혼 상태, 신용카드 한도 등)로 이루어짐 101272rows * 21 columns 변수 유형 설명 CLIENTNUM 숫자형 클라이언트 번호 Attrition_Flag 범주형 고객 이탈 여부 Customer_Age 숫자형 고객 나이 Gender 범주형 고객 성별 Dependent_count 숫자..
reference : 파이썬 머신러닝 완벽 가이드 1. Scikit-learn 정의 -> 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리 특징 개발을 위한 편리한 프레임워크와 API를 제공 머신러닝을 위한 다양한 알고리즘 존재 Easy conda install scikit-learn import sklearn 2. Scikit-learn의 주요 기능 1. Example Data sklean.datasets : 사이킷런에 내장되어 예제로 제공하는 데이터 세트 datasets.load_boston( ) : 미국 보스턴의 집 피처들과 가격에 대한 데이터 셋 [ 회귀 ] datasets.load_breast_cancer( ) : 위스콘신 유방암 피처들과 악성/음성 레이블 데이터 셋 [ 분류 ] da..
1. 기본적인 신경망 각 특성(뉴런)에 가중치(중요도)를 바꾸며 정확한 가중치를 구하는 방법 import tensorflow as tf import numpy as np from tensorflow.keras import Sequential from tensorflow.keras.layers import Dense # 모델 정의 model = Sequential([ Dense(units = 1, input_shape = [1]) # 하나의 뉴런을 가진 하나의 층 ]) # 모델 컴파일 model.compile(optimizer = 'sgd', loss = "mean_squared_error") xs = np.array([-1.0, 0.0, 1.0, 2.0, 3.0, 4.0], dtype = ..

데이터 분할(Data Partitioning) 1. 데이터 분할을 하는 이유 관측된 데이터를 모두 학습 데이터로 사용하여 예측을 한다면? 1. 과소적합(Underfitting) 모델이 충분히 복잡하지 않아 학습 데이터의 구조/패턴을 정확히 반영하지 못하는 문제 2. 과적합(Overfitting) 모델이 복잡하고 지나치게 학습하여 학습 데이터셋에서는 모델 성능이 높게 나타나지만 새로운 데이터가 주어졌을 경울 정확한 예측/분류를 수행하지 못함 Traing data에 더 적합한 모형을 구출할수록 오분류율은 감소 Training Data에만 적합된 모형이 구축됨으로써 모형이 복잡해질 수 있음 이 과정에서 좋은 모형이라고 착각 2. 과적합을 탐지하고 방지하기 위해 3가지로 분할 1. Training Data (6..

1. 정규화 & 표준화 선형함수 정규화(Min-Max Scaling) $X_{nrom} = {X-X_{min} \over X_{max}-X_{min}}$ 데이터에 대해 선형 변환 후 [0,1]범위로 변환 표준 정규화(Z-score Normalization) $Z = {{X - \mu} \over \sigma}$ 평균 = 0, 표준편차 = 1 경사하강법을 사용하여 해를 구하는 모형들은 일반적으로 정규화가 필요 선형 회귀, 로지스틱 회귀, 서포트 벡터 머신, 신경망 등 의사 결정 트리 계열은 정규화가 필요 없음 트리를 분할할 때 기준이 되는 것은 정보 이득비 정규화는 피처에 대한 정보 이득을 바꿀 수 없다. 2. 범주형 피처 범주형 피처 많은 머신 러닝 알고리즘들은 모든 예측 변수들이 수치형이어야함 범주형 ..