목록Programming (115)
Patrick's 데이터 세상
기술 통계 data(iris) head(iris) #Result ※ data는 내장된 데이터 프레임을 워크스페이스 안에 로드하여 쓸 수 있게 해주는 함수이다. 데이터 프레임은 R에서 행렬 형태의 자료를 담아두는 자료의 구조이다. head는 데이터를 기본 6줄을 보여주어 데이터가 성공적으로 import 되었는지를 살펴볼 수 있는 함수이다. 특정 라인까지 보고 싶다면 head(iris, n)을 사용하여 n에 숫자를 지정해주면 된다. summary(iris) #Result ※ summary는 데이터의 컬럼에 대한 전반적인 기초 통계량을 보여준다. 아래의 예를 보면 summary는 iris 데이터 프레임의 각 컬럼에 대하여 최소값(min), 최대값(max), 25% 백분위수(1st Qu), 75% 백분위수(3r..
1. 통계 분석 개요 가. 통계학 정의 자료로부터 유용한 정보를 이끌어 내는 학문. 유용한 정보를 이끌어 내는 작업에는 자료의 수집과 정리, 그리고 이를 해석하는 방법 등을 모두 포함한다. 나. 모집단과 표본 유용한 정보의 대상이 되는 것을 모집단이라고 한다. 즉, 모집단은 우리가 알고자 하는 전체를 의미한다. 모집단을 구성하는 개체를 추출 단위 혹은 원소라고 한다. 모집단에 대해 조사하는 방법에는 총조사(census)와 표본조사로 나뉜다. 총조사는 모집단의 개체 모두를 조사하는 방법으로 많은 비용과 시간이 소요되므로 '인구주택 총조사' 등 특별한 경우를 제외하고는 실시되지 않는다. 따라서 일부분만 조사하여 모집단에 대해 추론하는 것이 보통인데, 이러한 조사를 표본조사라고 하고 이때 조사하는 모집단의 일..
데이터 탐색 데이터를 본격 분석하기 앞서 대략의 데이터의 특성을 파악하고, 데이터에 대한 통찰을 얻기 위해 다각도로 접근함. ⊙ 데이터 기초 통계 data(iris) head(iris) # 데이터에서 앞 6줄만 보도록 한다. #Result head(iris,10) # 숫자를 넣어주면 원하는 개수만큼 볼 수 있다. #Result str(iris) # 데이터의 구조를 파악하도록 한다. #Result summary(iris) # 데이터의 기초통계량을 볼 수 있다. # 연속형 변수의 경우 4분위수, 최소값, 최대값, 중앙값, 평균 등을 출력하고 범주형 변수의 경우 각 범주에 대한 빈도수를 출력하여 데이터의 분포를 파악한다. # 연속형 변수의 경우 cov와 cor함수를 ㅗㅇ해 공분산행렬과 상관계수행렬을 출력하여 ..
데이터 테이블(data.table)은 데이터 프레임과 유사하지만 보다 빠른 그룹화(grouping)와 순서화(ordering), 짧은 문장 지원 측면에서 데이터 프레임보다 매력적이다. 하지만 무조건 빠른 것이 아니므로 특성에 맞게 사용해야 한다. 특히 64비트 환경에서 RAM이 충분히 많을 때는 효율적이다. install.packages("data.table") library(data.table) data.table() 함수를 이용하여 데이터 프레임을 생성. DT = data.table(x=c("b","b","b","a","a"), v=rnorm(5)) # 정규분포에서 5개의 난수 생성 DT #Result data.table도 data.frame과 같은 방법으로 생성된다. 데이터 프레임과 다른 점은 데이..
plyr은 데이터를 분리하고 처리한 다음, 다시 결합하는 등 가장 필수적인 데이터 처리 기능을 제공. apply 함수와 multi-core 사용 함수를 이용하면 for loop를 사용하지 않고 매우 간단하고 빠르게 처리할 수 있다. plyr은 apply 함수에 기반해 데이터와 출력변수를 동시에 배열로 치환하여 처리하는 패키지. ply()함수는 앞에 두 개의 문자를 접두사로 가지는데. 첫 번째 문자는 입력하는 데이터 형태를 나타내고, 두 번째 문자는 출력하는 데이터 형태를 나타낸다. ※ 가장 흔하게 쓰이는 데이터 형태에 대한 문자 1. d = 데이터 프레임 (data.frame) 2. a = 배열 (array) 3. l = 리스트 (list) 데이터 프레임 (data.frame) 리스트 (list) 배열 ..
⊙ 패키지 설치 install.packages("sqldf") library(sqldf) data(iris) sqldf("select * from iris") # 조회할 select 구문을 함수의 " " 안에 sql로 표현한다. #Result 데이터의 특정 행(row)수만 조회하고자 하는 경우 Oracle의 numrows처럼 limit를 정의하고 행의 개수를 써주면 된다. head와 같은 기능. sqldf("select * from iris limit 10") #Result like 문장을 사용할 때는 ' ' 를 이용하면 된다. sqldf("select count(*) from iris where Species like 'se%' ") #Result