본문 바로가기

Data_Analysis54

[SAS] PROC FREQ 1. PROC FREQ 기본 구조 proc freq 명령어는 데이터 테이블의 빈도를 조회하는 명령어입니다. 기본 구조는 아래와 같습니다. 우선, TABLES에 변수를 늘려가며 테이블의 형태를 살펴본 다음, OPTION 항목을 다루도록 하겠습니다. PROC FREQ DATA=dataset ; TABLES variable(s) / ; RUN; 1) TABLES 변수1 TABLES 다음에 변수를 입력하면 변수의 빈도, 백분율, 누적 빈도, 누적 백분율을 조회할 수 있습니다. // 변수 1개 PROC FREQ DATA=SASHELP.HEART; TABLES Smoking_Status; //TABLES 변수명 RUN; 2) TABLES 변수1 변수2 변수에 대한 테이블이 각각 출력됩니다. 기본적으로 1개 변수 테.. 2021. 2. 9.
[SAS] PROC TABULATE 1. TABULATE 프로시저의 기본 형식 TABULATE 프로시저는 테이블을 작성할 때 사용하며, FREQ 프로시저보다 다양한 형식의 통계 테이블을 작성할 수 있습니다. [기본 형식] PROC TABULATE 형식; TABLE 행변수명, 열변수명; CLASS 변수명; VAR 변수명; [FORMAT 변수명 형식이름]; RUN; **TABULATE 프로시저 명령들 1) Class 2) Var 3) Table 4) Format Table 명령에서 작성하고자 하는 표의 행, 열 변수를 지정하며 기본적인 규칙은 아래와 같습니다. - Table 명령에서 적어도 1개 이상의 변수를 지정 - Table 명령에 사용되는 차원변수는 Class / Var에서 지정. (범주형인 경우 Class명령에서, 통계값이 산출되는 분.. 2021. 1. 28.
[SAS] 범주형 자료분석 성별, 직업, 선호도 같이 수치적으로 연속성을 가지고 있지 않은 범주형 자료의 경우 연속형 자료와 다른 분석 방법이 필요합니다. 이번 포스팅에서는 범주형 자료를 아래와 같은 방법으로 자료를 분석하고자 합니다. 1. 도수분포표 및 분할표 2. 적합도 검정 3. 독립성 검정 4. 동질성 검정 1. 도수분포표 및 분할표 범주형 자료의 분포를 살펴보기 위해 SAS의 FREQ 프로시저를 이용합니다. 1) 1개 특성의 분포 1) FREQ */ /* 1개 특성의 분포표 */ PROC FREQ DATA=SASHELP.HEART; TABLES Smoking_Status; RUN; [결과] - 전체 관찰 대상 중 흡연 정도에 따라 분포 빈도와 비율을 살펴봅니다. - 우선은 Non-smoker비율이 약 48%로 비흡연자의 .. 2021. 1. 7.
[SAS] 기술통계량 산출 및 정규성 검정 아래와 같은 SAS 프로시저로 일변량 자료를 요약할 수 있습니다. 3개 프로시저 모두 대푯값과 산포도를 포함한 기술 통계량 값을 제공합니다. 특히, UNIVARIATE 프로시저는 정규성 검정을 위한 정규 확률도, 상자 그림, 히스토그램을 제공합니다. 1. UNIVARIATE 2. MEANS 3. SUMMARY ** 캐글의 BankChurners데이터를 사용했습니다. 1. UNIVARIATE 1) 정규성 검정 - 주어진 통계자료가 정규 분포를 따르는 모집단으로 추출된 표본인지 검정. - 대부분의 통계 이론은 모집단이 정규분포라는 가정하에 이뤄지므로 추출된 표본이 정규 모집단으로부터의 표본인지를 검정하는 정규성검정은 통계분석에 선행하여 이뤄질 필요가 있음. - 귀무가설(H0) : 모집단의 분포가 정규분포. .. 2021. 1. 4.
[Machine Learning] Kernel SVM(Support Vector Machine) 1. 커널 SVM이란 - 앞서 SVM 포스트에서는 선형 SVM을 중심으로 다뤘다. 그러나 실제로 선형 SVM으로 분류하기 어려운 데이터 형태들도 있다. 커널 기법의 기본적인 아이디어는 데이터를 높은 차원으로 이동시켜 고차원 공간에서 데이터를 분류하고자 함이다. 2. 듀얼 형태 변형 - 지난 SVM 포스팅에서 듀얼 형태를 다룬 적 있다. 듀얼 형태를 변형시켜 커널 SVM에서 활용할 수 있다. ** 커널의 의미 3. 커널SVM 종류 1) 선형 SVM : K(x1,x2)=x1.T*x2 2) 다항식 커널 3) 가우시안 커널 : 성능이 우수하여 가장 많이 쓰이는 기법. 4) 시그모이드 커널 SVM : K(x1,x2)=tan(r(x1.T*x2)+theta) 4. SVM 예제 적용 [붓꽃 문제] scikit-lear.. 2020. 12. 28.
[Machine Learning] SVM(Support Vector Machine) 1. SVM(Support Vector Machine)이란? - 서로 다른 데이터를 분류하는 기준 선(결정 경계)을 정의하는 모델로, 새로운 점이 나타났을 때 결정 경계를 기준으로 어느 쪽에 속하는지 분류하는 과제를 수행한다. - 속성이 3개인 3차원에서 결정 경계는 선이 아닌 면이 된다. 차원이 늘어나면 결정 경계도 고차원의 초평면이 된다. [이미지 출처] 위키백과 - 서포트 벡터 : 결정 경계와 가장 가까운 데이터. - 결정 경계는 각 데이터 中 결정 경계와 가장 가까운 거리까지 마진을 설정한다. 이때, 마진을 최대화하는 결정 경계가 가장 우수하다고 할 수 있다. 다시 말해, 결정 경계는 데이터군으로부터 멀리 떨어질수록 좋다. - 대부분의 지도 학습은 모든 데이터를 이용하여 학습하지만 SVM은 데이터.. 2020. 12. 28.
[Spark] 구조적 API 기본 연산2 - 로우 [Row Handling] 1) 로우 생성 - 로우의 데이터에 접근할 때는 원하는 위치와 데이터 타입을 지정합니다. 자바나 스칼라를 사용할 때는 명시적으로 데이터 타입을 정의하지만, Python이나 R같은 동적 코드에서는 타입이 자동으로 변환됩니다. import org.apache.spark.sql.Row val myRow=Row("Hello",null,1,false) myRow 2) 로우 필터링 - filter 또는 where 메서드로 로우 필터링 - filter와 where는 똑같은 기능을 하며, - 메서드를 연달아 쓸 경우 메서드의 조건이 AND로 조건이 적용된다. - 다만, 스파크는 자동으로 필터의 순서와 상관없이 동시에 모든 필터링 작업을 수행 // 2) 로우 필터링 : filter 또는 whe.. 2020. 12. 26.