Playing with Data 13

데이터 분석의 4가지 유형

데이터 분석에는 크게 4가지 유형이 있습니다. 설명/묘사을 위한 분석 (Descriptive Analytics) 진단을 위한 분석 (Diagnostic Analytics) 예측을 위한 분석 (Predictive Analytics) 처방을 위한 분석 (Prescriptive Analytics) 다음 URL에 잘 정리되어 있어, 인용합니다. https://www.kdnuggets.com/2017/07/4-types-data-analytics.html The 4 Types of Data Analytics By Thomas Maydon, Principa. We’ve covered a few fundamentals and pitfalls of data analytics in our past blog posts. ..

dplyr를 사용할 때, 인자값을 자유롭게 사용할 수 있는 팁

R에서 데이터 전처리를 할 때, 저는 주로 dplyr를 사용합니다. 근데 조금 불편하였던 점은 함수로 주고받을 때, 데이터셋에 있는 컬럼명을 사용해야하는 점이 불편했습니다. 물론 dplyr에서 dots 옵션 등을 통해 문자열 형태로 컬럼명을 넘겨주어도 가능하지만 그대로 뭔가 아쉬웠습니다. 그러다 다음의 팁을 확인하고 기록해두고자 합니다.tf

SAS에서 ROC를 그리고 최적 Cut-off 찾는 방법

최근에 SAS를 사용하다보니, 여러가지 기록하고 싶은 것들이 많네요. SAS에서 ROC 커브를 그리고, 최적 Cut-off를 찾는 방법을 기록해두고자 합니다.이 방법은 첨부한 문서 2개를 조합하여 정리한 것입니다. 아, 최적 Cut-off의 기준은 Youden's Index를 사용하였습니다. (해당 Index는 Sensitivity + Specificity - 1 값입니다.) 먼저, ROC 커브를 그리기 위해서는 PROC LOGISTIC 를 사용하면 됩니다. Y변수로는 원하는 반응변수(0, 1를 담고 있는 변수)를 설정하고, X변수로는 다른 모델링 등을 통해 얻은 확률 값을 설정하면 됩니다. PROC LOGISTIC DATA=dataset OUTEST = outest; MODEL y_var(EVENT =..

SAS에서 원하는 문자열에 대해서 loop문 적용하기

일반 프로그래밍에서처럼 for문 사용에 익숙한 저에게 SAS에서의 for문은 다소 어렵기만 하네요. 특히 원하는 문자열에 대해서 for문을 돌면서 무언가를 하고 싶은데.. 쉽지 않더라구요. int 형의 경우에는 다소 쉬운데 말이죠. 그래서 이래저래 찾다가 다음과 같은 팁을 발견하여 기록해두고자 합니다. %LET my_list = A B C; %LET length = %sysfunc(countw(&my_list)); %DO i=1 %TO &length; %LET element = %scan(&my_list, &i); %PUT &element; %END; 위 코드를 살펴보면, 일단 my_list라는 변수를 선언하고, 해당 변수의 길이를 확인하여 loop를 돌리는 것을 알 수 있습니다.

데이터 분석 방법론 - (1) 데이터마트에서 데이터셋까지

데이터 분석을 하다보면 일련의 방법론이 필요하다는 생각이 듭니다. 일부 동료 분석가들은 "너가 컨설턴트 출신이라 그래." 라는 식으로 방법론에 대해 회의적인 의견을 보이기도 하지만, 그래도 저는 방법론이 있으면 좋겠다는 생각입니다. 그래서 구글링을 해보니 분석 방법론을 정리한 글들을 많이 볼 수 있었고, 방법론에서 더 나아가 데이터 분석 프로세스에서 확인해야할 Check List를 정리해놓은 사이트도 볼 수 있었습니다. 이런 글들에 무임승차로 편승하여 그 방법대로 따라서 분석을 진행하다가 결국은 직접 나만의 분석 프로세스를 정리하여야 내재화될거 같아 정리해두려 합니다. 다음에 기술하는 데이터 분석 절차는 특별할 거는 없이 상식적 수준에서 정리한 것이며, 앞으로 계속 갱신할 예정입니다. 데이터 분석 과정1..

데이터 타입 비교 - Vectors,Matrices, Arrays, Lists and Data Frames

R에서 사용하는 데이터 타입은 크게 Vectors, Matrices, Arrays, Lists and Data Frames 이렇게 5개로 구분해볼 수 있습니다. 이 타입의 구분은 R를 다룰 때 중요하므로, 한번 정리해보도록 하겠습니다. 1. 백터(Vector) 어느 자료를 보다보니, 벡터에 대해 다음과 같이 정의해놓았는데, 개인적으로 가장 잘 와닿는 정의라서 그대로 인용해보려고 합니다. Vector is a collection of ordered homogeneous elements. 이는 "백터는 정렬된 동질적 요소의 집합"이라고 번역할 수 있습니다. 빨간색으로 강조된 것 중에서 "동질"이라는 것에 유의할 필요가 있습니다. 벡터는 숫자형과 문자형이 서로 섞여서 저장, 생성될 수 없습니다. 다음의 예제를..

for문을 대체할 수 있는 apply 함수

R은 for문을 사용해서 반복하기보다는 apply를 사용하는 것이 속도 측면에서 좀더 우월한 결과를 보이는 경우가 있습니다. 그래서 일부 분석가들은 R에서 apply함수를 가장 중요한 함수라고 하기도 합니다. 그러기에 apply함수를 토대로 파생된 함수들도 많습니다. 예를 들자면, lapply, sapply, tapply, vapply, mapply 등이 있습니다. 이들 함수에 대해 먼저 기본적 사항을 정리해보겠습니다. 표로 정리하면 다음과 같습니다. 함수명 대상 데이터 타입 apply Matrices, Arrays lapply, sapply Lists tapply Ragged arrays as vectors 1. apply 함수 apply함수의 대상이 되는 타입은 행렬 또는 배열입니다. 하지만, dat..

데이터 반죽을 위한 R 라이브러리 - dplyr, tidyr

R에는 매우 다양한 라이브러리들이 있습니다. 그리고 라이브러리들이 서로 유사한 기능을 하는 경우도 많습니다. 그래서 항상 어느 라이브러리를 사용해야 좋은지 고민이 되는 경우가 많습니다. 데이터를 다루기 위한 라이브러리도 그러합니다. 별도 라이브러리 없이 기본 R 명령어로도 잘 사용하는 분들도 계시고, 데이터를 다루는 라이브러리 중 "data.table"를 사용하는 분들도 있습니다. 저는 개인적으로 처음에 dplyr, tidyr로 데이터를 다루기 시작하여 이 두 개 라이브러리를 사용합니다. 그래서 이 라이브러리를 통해 데이터를 다루는 것에 대해 정리하고자 합니다. 1. 특정 컬럼값만 가져오기 : Select SQL 명령어를 아시는 분들이면 이미 익숙한 SELECT가 dplyr에도 있습니다. 동일하게 sel..

반응형