Software Development 378

Python RandomForestRegressor

1. import RandomForestRegressor from sklearn.ensemble import RandomForestRegressor 2. 모델 생성 model = RandomForestRegressor() 3. 모델 학습 : fit model.fit(x_train, y_train) 4. 모델 검증 print(model.score(x_train, y_train)) print(model.score(x_test, y_test)) 5. 모델 예측 y_predict = model.predict(x_test) print(y_predict[0]) 6. 피쳐 중요도 확인 model.feature_importances_ ->feature_importances : 결정트리에서 노드를 분기할 때, 해당 피쳐..

python 함수 소소한 메모

변수명 재설정 : rename df1 = df1.rename(columns={'old_name':'new_name'}) df1 원하는 columns만 추출 col_name = ['A', 'B','C'] df1[col_name] apply 와 applymap ->lambda적용시 apply는 Series를 적용 합치기 concat, df의 'A', 'B' column을 df_origin의 'Res'와 합치기 df_result = pd.concat([df[['A','B']], df_origin['Res']], axis=1) df_result 'A' 값이 1인 'Res'의 평균, 'B'값이 1인 'Res'의 평균 mean_A = df_result.loc[df_result['A']==1,'Res'].mean()..

Python - lambda & 정규표현식 기초

python def 함수 def is_ABC(x): if(x=='ABC'): return 1 else: return 0 df['is_ABC'] = df['ABC'].apply(is_ABC) if: elif: else: lambda로 변경 df['is_ABC'] = df['ABC'].apply(lambda x: 1 if x=='ABC' else 0) ABC인경우 1, DEF인경우 2, 나머지 3인경우로 바꾸기 df['is_ABC'] = df['ABC'].apply(lambda x: 1 if x=='ABC' else (2 if x=='DEF' else 3)) df 정규표현식 import re #휴대폰 번호 추출 pattern = re.compile("010-[0-9]{4}-[0-9]{4}") pattern...

Python Data Science 기초 함수 정리

기본 함수들 - unique() : 데이터의 고유 값들이 어떤 것이 있는지 확인 - nunique() : 고유한 값들의 갯수 - value_counts() : 고유 값별 데이터의 수 df_bike.season.value_counts() normalize 및 정렬(ascending) 옵션이 있다. df_bike.season.value_counts(normalize=True) df_bike.season.value_counts(normalize=True).round(2) 변수간 관계 : crosstab pd.crosstab(df_bike['weather'], df_bike['season']) 공통된 데이터로 그룹화 : groupby 예제 : cut을 기준으로 그룹화 한 후, price에 대한 min, max,..

파이썬 Data Science 기초 - DataFrame index

1. pandas 패키지 가져오기 import pandas as pd pd.__version__ 2. DataFrame dict_data = dict(a=[1,2,3,4], shape=[7,34,1,9]) df = pd.DataFrame(dict_data) df df['a'] df.a df.shape ##기본 함수에 shape가 있어서 원하는 출력이 나오지 않음 df['shape'] **dir을 통해 지원 함수 조회 가능 dir(df) #함수명 조회 *변수명 확인 df.columns df.columns.values[0] #첫번째 column 가져오기 'a' df.columns.values[0]='b' ##b로바꿈 df.columns **rename 함수 : column 이름 변경 df = df.renam..

머신러닝 지도학습 - KNN알고리즘

k-NN(k-Nearest Neighbor, k-최근접 이웃) - 특정 데이터를 k개의 인접한 요소를 기반으로 예측하는 지도학습 알고리즘 - 종속변수에 따라 분류모델과 회귀모델로 나눔 - k값이 1에 가까우면 과적합이 되며, 값이 커질수록 과소적합이 되기에 적절한 k값을 선택해야 한다. - 이진 분류시 k값을 짝수로 지정하는 경우 그 분류가 제대로 되지 않을 수 있기에 홀수로 지정 - 거리 기반 알고리즘이기 때문에 각 변수의 단위 및 정규화에 유의 - Test데이터와 가까운 k개의 Train 데이터의 y값들을 비교 - 분류와 회귀 문제를 모두 다룰 수 있음 1) 분류 문제를 다룰 때는 class 다수결로 결과 class 를 예측 2) 회귀 문제를 풀 때는 평균값을 결과값으로 예측 - 비모수 방식이며 in..

머신러닝 지도학습 - 의사결정나무(Decision Tree)

의사결정나무(Decision Tree) - 의사결정나무란 의사결정 규칙(Decision Rule)을 나무구조로 도식화하여 관심대상이 되는 집단을 몇 개의 소집단으로 분류(Classificiation)하거나 예측(Regression)하는 계량적 분석 방법 - 분류 또는 예측이 나무구조의 If ~ then 형태의 추론규칙으로 표현되기 때문에 다른 분석 방법에 비하여 이해와 설명이 쉽다. - 회귀 분석과 달리 각종 가정 불필요하며 직관적이고 해석이 비교적 쉬움 - 종속변수가 명목형인 경우 분류 나무(Classification Tree), 연속형인 경우 회귀 나무(Regression Tree) 사용 - 의사결정나무를 여러 개 합쳐서 만든 모델 중 대표적인 것이 Random Forest 의사 결정 나무(Decis..

머신러닝 개념

머신 러닝(Machine Learning) - 기계학습이라고도 하며 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야 - 추정 및 추론에 중점을 두는 통계와는 달리 주로 예측에 초점을 맞추고 있음 - 주어진 기반으로 학습을 하여 비교적 일반화된 수식 또는 규칙이 담긴 모델을 생성하고 교정함 - 생성한 모델을 각 알고리즘의 고유한 평가지표 또는 범용 평가지표를 활용하여 평가함 머신러닝의 종류 1) 지도학습(Supervised Leaning) (or 교사 학습 / or 감독학습) - 학습 데이터 안에 입력값에 대한 출력값이 함께 제시됨 - 알고리즘은 입력값과 출력값 사이의 관계를 가장 잘 설명할 수 있는 '모델'을 찾음 - 이 '모델'을 사용하여 새로운 입력값에 대한 예측 수행 - 출력값이 수..

주요확률분표 : 이산,연속,균등,이항,포아송,지수

1. 이산 & 연속 확률 - 확률 변수(Random Variable) : 표본 공간의 원소를 실수로 대응한 값 > 확률적인 과정(무작위 실험)의 결과를 수치적으로 표현하는 변수(일반적으로 X로 표기) > 상태공간(state space): 확률 변수 X가 취하는 모든 실수 집합 > 이산확률변수(discrete random variable) : 유한 개의 값으로 구성되어 있는 변수 > 연속확률변수(continuous random variable) : 주어진 실수 범위 내에서 연속적인 범위의 값을 지니는 변수 - 확률 분포 : 확률 변수와 그 값이 나올 수 있는 확률을 대응시켜 표시하는 것 - 확률 함수 : 확률 변수에 의하여 정의된 실수를 0과 1 사이의 실수(확률)에 대응시키는 함수 > 확률 변수의 종류에..