Data Analysis

R 34

[R] 앙상블 기념 및 실습 (배깅)

의사결정나무의 문제점을 ctree와 다른 방식으로 보완하기 위하여 개발된 방법 주어진 자료로부터 예측 모형을 여러 개 만들고, 이것을 결합하여 최종적인 예측 모형을 만드는 방법 배깅(Breiman, 1996) -> 부스팅 개발 -> 랜덤포레스트(Random Forest) 앙상블에서 사용되는 기법: 배깅, 부스팅, 랜덤포레스트 1. 배깅(Bagging) - 불안정한 예측모형에서 불안전성을 제거함으로써 예측력을 향상 - Where 불안정한 예측모형: 데이터의 작은 변화에도 예측 모형이 크게 바뀌는 경우 - Bootstrap AGGregatING의 준말 - 주어진 자료에 대하여 여러 개의 부트스트랩(bootstrap)자료를 만들고, 각 부트스트랩 자료에 예측 모형을 만든 다음, 이것을 결합하여 최종 예측 모형..

[R] 군집분석 (2), 비계층적 군집 분석

1.4 비계층적 군집 분석 군집의 수가 정해진 상태에서 군집의 중심에서 가장 가까운 개체를 하나씩 포함해 나가는 방법. 대표적인 방법이 K-means clustering K-means clustering 방법은 군집 수를 미리 알고 있는 경우 군집 대상의 분포에 따라 군집의 초기값을 설정해 주면, 초기값에서 가장 가까운 거리에 있는 대상을 하나씩 더해가는 방식. 계층적 군집 분석을 통해 대략적인 군집의 수를 파악하고 이를 초기 군집 수로 설정하여 비계층적 군집 분석을 수행하는 것이 효과적 장점: 대량의 자료를 빠르고 쉽게 분류 가능 단점: 군집의 수를 미리 알고 있어야 한다. 실습 (K-means 알고리즘에 군집 수를 적용하여 군집별로 시각화) ggplot2패키지에서 제공하는 diamonds데이터 셋 대..

[R] 변수제거 개념 및 실습

변수 제거 1. 주성분 분석 2. 0에 가까운 분산을 가지는 변수 제거 분산이 0에 가까운 변수는 제거해도 큰 영향이 없음. nearZeroVar()함수 'saveMetrics=FALSE'속성: 예측변수의 컬럼위치에 해당하는 정수 벡터 'saveMetrics=TRUE'속성: 컬럼을 가지는 데이터프레임 freqRatio: 가장 큰 공통값 대비 두번째 큰 공통값의 빈도의 비율 percentUnique: 데이터 전체로 부터 고유 데이터의 비율 zeroVar: 예측변수가 오직 한개의 특이값을 갖는지 여부에 대한 논리 벡터 nzv: 예측변수가 0에 가까운 분산예측 변수인지 여부에 대한 논리 벡터 실습. ======================= #관련 패키기 불러오기 install.packages("caret")..

[R] 다차원 척도법 개념 및 실습

다차원 척도법(Multi-dimensional Scaling) - 여러 대상의 특징 사이 관계에 대한 수치적 자료를 이용하여 유사성에 대한 측정치를 - 상대적 거리로 구조화하는 방법 - 2차원 또는 3차원에서의 특정 위치에 관측치를 배치해서 보기 쉽게 척도화 즉, 항목 사이 거리를 기준으로 하는 자료를 이용하여 항목들의 상대적인 위치를 찾고 거리가 가까운 개체들끼리 Group 화 하여 분류할 수 있다. 다차원 척도법 적용 절차 1) 자료 수집: 특성을 측정 2) 유사성, 비유사성 측정: 개체 사이의 거리 측정 3) 공간에서 개체 사이 거리 표현 4) 개체의 상호 위치에 따른 관계가 개체들 사이 비유사성에 적합여부 결정 다차원 척도법의 종류 1) 계량적(전통적) 다차원 척도법(Classical MDS) 숫..

[R] 베이지안 확률개념 및 실습

베이지안 확률(Bayesian probability) 저의 - 베이즈정리라 불리며, 종속적(의존적) 관계에 놓인 사건들을 기반으로 확률을 구함. - 두 확률 변수의 사전 확률과 사후 확률 사이의 관계를 나타내는 정리. - 사전확률 P(A)과 우도활률 P(B|A)를 안다면 사후확률 P(A|B)를 알 수 있음. - 베이지안 확률은 아래 조건부 확률로 나타내며, 정보를 업데이트하면서 사후확률 P(A|B)를 구하는 것이다. 베이지안 확률 계산식 - 위에 정의가 나오는 계산식 과정이다. - P(B)값은 A와 A여집합과 P(B) 사이의 교집합 합으로 구할 수 있다. R로 실습해보기 install.packages("e1071") #SVM구현체인 libsvm을 R에서 사용할 수 있도록 만든 패키지 install.pac..

[R] 인공신경망 관련 실습

핵심함수 nnet(): 신경망 알고리즘을 만들어 주는 함수 predict(): 분류예측치를 나타내는 함수 lappy(): lapply 함수는 list + apply를 의미하는 이름의 함수로, 실행 결과가 list 형태로 출력되는데, 리스트(list)의 인자는 length( 데이터 ) 만큼 생성된다. neuralnet(): 인공신경망 모델 생성함수 cor(): 상관계수관련 값을 만드는 함수 #1단계: 패키지 설치 install.packages("nnet") #신경망 알고리즘 관련 페키지 library(nnet) #2단계: 데이터 셋 생성 # 데이터프레임 생성 - 입력 변수(x)와 출력변수(y) df = data.frame( x2 = c(1:6), x1 = c(6:1), y = factor(c('no', '..

[R] 상관분석 관련 실습

실습 (기술통계량 구하기) 1단계: 데이터 가져오기 2단계: 기술통계량 실습 (상관계수 보기) 변수간의 상관계수는 stats패키지에서 제공하는 cor()함수 사용 형식: cor(x, y=NULL, use=”everything”, method=c(“pearson”, “kendall”, “spearman”)) where method를 생략하면 pearson이 사용된다(default) 1단계: 변수 간의 상관계수 보기 2단계: 제품_적절성과 제품_만족도의 상관계수 보기 3단계: (제품_적절성+제품_친밀도)와 제품_만족도의 상관계수 보기 실습 (방향성 있는 색상으로 표현) 실습 (차트에 밀도곡선, 상관성, 유의확률(별표) 추가) 1단계: 패키지 설치 2단계: 상관성, p값(*), 정규분포(모수 검정 조건) 시각..

[R] 시계열분석 관련 실습(2)

핵심함수 ts(): 시계열 데이터를 만들 때 쓰는 함수 acf(): 시계열 정상성 여부를 판단, 모형식별 시 사용 pacf(): 부분 자기 상관 함수 시각화 시 사용 SMA(): 시계열 데이터를 이동평균한 값으로 생성하는 함수 SMA(data, n = 이동평균수) tsdiag(): 쉽게 잔차분석을 할 수 있게 해주는 함수 Box.test(): Box-Ljung감정에 의한 진차항 모형진단 실습1 (시계열 요소 분해 시각화) 자기 상관 함수에 의해서 주기 생성에는 어떤 종류의 시간 간격이 영향을 미치는가를 보여주고 있다. 모든 시차가 점선 안에 있기 때문에 주어진 시점 간의 자기 상관성은 없는 것으로 해석 실습2 (시계열 자료의 추세 패턴 찾기 시각화) 추세패턴: 시계열 자료가 증가 또는 감소하는 경향이 있..

[R] 시계열분석 관련 실습(1)

메인 함수 ts.plot(): 시계열로된 자료들을 시각화할 때 사용하는 함수 diff(): 평균을 정상화 하는데 사용하는 함수 plot(): 자료를 시각화할 때 쓰는 함수 log(): 분산을 정상화할 때 사용하는 함수 X11(): 시각화할 화면을 개별적으로 만드는 함수 stl(): 하나의 시계열 자료를 대상으로 시계열 변동요인 4가지를 모두 제공하는 함수 실습1 (비정상성 시계열을 정상성 시계열로 변경) - 차분을 수행한 결과가 대체로 일정한 값을 얻으면 선형의 추세를 갖는다는 판단 가능 만약, 시계열에 계절성이 있으면 계절 차분을 수행하여 정상성 시계열로 변경 - 차분된 것을 다시 차분했을 때 일정한 값들을 보인다면 그 시계열 자료는 2차식의 추세를 갖는다고 판단 실습2 (단일 시계열 자료 시각화) 실..