Playing with Data/R | Python 6

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

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

데이터 타입 비교 - 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..

데이터 분석의 시작은 데이터 반죽하기

데이터 분석 업무를 수행하면서, 가장 큰 고민이 "데이터 분석의 기본이 무엇일까?"였습니다. 그리고, 스스로 가장 기본은 데이터를 원하는대로 만들고, 조작할 수 있는 데이터 반죽 능력이라고 결정을 내렸습니다. 정말 데이터 반죽 능력이 중요해? 라고 되짚어본다면, 전통적으로 통계 분석 툴의 강자인 SAS의 구성을 보더라도 데이터 반죽이 기본이라는 것을 알 수 있습니다. SAS는 크게 Data 부분과 Proc 부분으로 구성되어 데이터를 분석하는 것이 기본 프레임입니다. 그리고 항상 데이터 분석 Procedure를 호출하는 Proc부분 앞에 Data 부분이 있습니다. 그리고, Data부분에서 원하는 형태로 데이터를 가공한 후에야 비로소 Proc를 통해 데이터 분석이 가능합니다. 그만큼 데이터 분석 전에 데이터..

반응형