"R 기본"의 두 판 사이의 차이
DB CAFE
(→R명령어) |
|||
1번째 줄: | 1번째 줄: | ||
− | + | == R명령어 == | |
=== 변수정의 === | === 변수정의 === | ||
− | + | ==== rm() ==== | |
− | - 변수 | + | - 변수 삭제 |
− | + | ==== ls() ==== | |
- 현재 선언해서 사용중인 변수목록 | - 현재 선언해서 사용중인 변수목록 | ||
− | + | ==== setwd() ==== | |
- 작업파일 위치 | - 작업파일 위치 | ||
− | + | ==== getwd() ==== | |
- 현재 설정된 파일위치 | - 현재 설정된 파일위치 | ||
− | + | ==== summary([데이터이름]) ==== | |
- 최솟값,1/4값,중간값,평균,1/3값,최댓값의 써머리 출력 | - 최솟값,1/4값,중간값,평균,1/3값,최댓값의 써머리 출력 | ||
− | + | ==== data() ==== | |
- 데이터를 사용하겠다는 선언 | - 데이터를 사용하겠다는 선언 | ||
− | + | ==== str() ==== | |
- 데이터 구성/자료형 보기 | - 데이터 구성/자료형 보기 | ||
− | + | ==== attach() ==== | |
- 변수/데이터 를 메모리에 고정 | - 변수/데이터 를 메모리에 고정 | ||
− | + | ==== as.numeric() ==== | |
- 데이터를 숫자형으로 변환 | - 데이터를 숫자형으로 변환 | ||
− | + | ==== detach() ==== | |
- 메모리에 선언된 변수 해제 | - 메모리에 선언된 변수 해제 | ||
− | + | ---- | |
− | + | === 파일읽기/쓰기 === | |
+ | |||
+ | ==== save(x,file="number.Rdata") ==== | ||
- x변수값을 "number.Rdata"로 저장 | - x변수값을 "number.Rdata"로 저장 | ||
− | + | ==== load("number.Rdata") ==== | |
- 파일내용읽기 | - 파일내용읽기 | ||
− | + | === sink("output.txt") | |
− | + | === scan("파일이름",what="디렉토리") | |
- 설정된 디렉토리에서 파일읽기 | - 설정된 디렉토리에서 파일읽기 | ||
− | + | === read.table("output.txt",header=T) | |
- 테이블 형태로 읽기 | - 테이블 형태로 읽기 | ||
- read.table("testdata.txt", header=T) | - read.table("testdata.txt", header=T) | ||
− | + | === CSV읽기 === | |
- read.csv("exeldata.csv") | - read.csv("exeldata.csv") | ||
− | + | ---- | |
− | + | === 데이터형 === | |
+ | |||
+ | ==== y[1,] ==== | ||
- 첫행 읽기 | - 첫행 읽기 | ||
− | + | ==== y[,1] ==== | |
- 1열읽기 | - 1열읽기 | ||
− | + | ==== Vector ==== | |
- v<- -5:5 | - v<- -5:5 | ||
− | + | - -5 ~ 5사이값을 할당 | |
- v<-c(-5,5) | - v<-c(-5,5) | ||
− | + | - -5,5를 할당 | |
- v<-c(-5:5) | - v<-c(-5:5) | ||
92번째 줄: | 96번째 줄: | ||
- vector집합연산 | - vector집합연산 | ||
− | + | - union(x,y) | |
− | + | - 합집합-중복제거 | |
− | + | - intersect | |
− | + | - 차집합 | |
− | + | - setdiff(x,y) | |
− | + | - x기준, y값을 빼준것 | |
− | + | - is.element(2,x) | |
− | + | - 2가 x의 원소인지 검사 | |
− | + | - x<-c(sort(sample(1:99,9))) | |
- 문자형vector | - 문자형vector | ||
− | + | - unique(x) | |
− | + | - match(x,c("A")) | |
− | + | - x의 데이터가 A와 같은지검사하고 같으면 1을 출력,NA는같지않음 | |
− | + | - k<-paste(x[1],x[3]) | |
− | + | - 벡터x에서 첫번째,세번째 문자를 k에 할당 | |
− | + | - paste(x,collapse="%") | |
− | + | - x를 구성하는 문자열을 %로 연결하기 | |
− | + | - paste(x,collapse='') | |
− | + | - x를 구성하는 문자열을 공백없이 연결 | |
− | + | - substring(m,2:5) | |
− | + | - m객체 문자열에서 2~끝,3~끝,4~끝,5~끝 을 출력 | |
− | + | - grep("Co",x) | |
− | + | - x에서 "Co"로 시작하는 것을 찾는다. | |
- 논리형 vector | - 논리형 vector | ||
− | + | - x<- runif(5) | |
− | + | - 0,1 사이의 난수 다섯 개를 만들어 x에 할당 | |
− | + | - any(x>0.9) | |
− | + | - x값이 조건에 맞는지 검사 | |
− | + | - all(x<0.9) | |
− | + | - 모든x의 값들이 0.9보다 작은지 검사 | |
− | + | - is.vector(x) | |
− | + | - is.factor(x) | |
− | + | - 데이터형이 팩터인지 확인 | |
− | + | - x<-rnum(5) | |
− | + | - 평균이 0인 정규분포하는 변수5개를 x에 할당 | |
− | + | ==== Factor ==== | |
- factor() | - factor() | ||
− | + | - 데이터를 팩터형으로 변환 | |
− | + | ==== Matrix ==== | |
- 행렬 | - 행렬 | ||
− | + | - 2차원 동일형 데이터 | |
− | + | - 각 컬럼별 다른형 데이터 할당가능 | |
− | + | - rbind() | |
− | + | - 벡터데이터를 모아서 열 데이터를 구성 | |
− | + | - rbind(array1,array2,array3) | |
− | + | - cbind() | |
− | + | - 행데이터 구성 | |
− | + | - cbind(array1,array2,array3) | |
− | + | - apply() | |
− | + | - 배열,행렬등에 함수를 적용한 결과를 벡터,배열,리스트로 변환 | |
− | + | - apply(x,1,max) | |
− | + | - x데이터 1열의 최대값 | |
− | + | - apply(x,1,sum) | |
− | + | - apply(x,2,mean) | |
− | + | - lapply() | |
− | + | - 결과를 리스트로 반환 | |
− | + | - sapply() | |
− | + | - 결과를 벡터,배열,행렬로 반환 | |
− | + | - sapply(리스트,sum) | |
− | + | - tapply() | |
− | + | - 데이터를 그룹핑한후 함수 적용 | |
− | + | - mapply() | |
− | + | - sapply()확장 | |
− | + | - 여러개 벡터,리스트로인자를 받고 함수에 인자별 적용 결과를 반환 | |
− | + | - mapply(sum,리스트1,리스트2) | |
− | + | - 리스트1+리스트2 | |
− | + | - colnames(x) | |
− | + | - 컬럼 이름을 추가 | |
− | + | - rownames(x) | |
− | + | - 로우 이름을 추가 | |
− | + | - colSums(x) | |
− | + | - 컬럼의합 | |
− | + | - rowSums(x) | |
− | + | - 로우의 합 | |
− | + | - matrix(x,nrow=3) | |
− | + | - x데이터 열을 3으로 분리하여 행렬 구성 | |
− | + | - 데이터를 매트릭스형으로 만들기 함수 | |
− | + | - 매트릭스변수x * 3 은? | |
− | + | - 매트릭스 전체에 2를 곱한다. | |
− | + | - matrix(1:12,nrow=3,dimnames=list(c("R1","R2","R3"),c("C1","C2","C3","C4"))) | |
− | + | - colSums(x) | |
− | + | - 행렬데이터x의 컬럼 합 | |
− | + | - rowSums(x) | |
− | + | - 행렬데이터x의 로우 합 | |
− | + | - colMeans | |
− | + | - rowMeans | |
− | + | ==== Data Frame ==== | |
- data.frame() | - data.frame() | ||
- 예시 | - 예시 | ||
− | + | - 데이터만들기 | |
− | + | no<- c(1,2,3,4) | |
− | + | name<- c("A","B","C","D") | |
− | + | ages<-c(52,53,54,55) | |
− | + | sex<-c("M","M","F","M") | |
− | + | - 데이터프레임으로 변환 | |
− | + | - Insa<-data.frame(No=no,Name=name,Age=ages,Sex=sex) | |
− | + | - 데이터처리 | |
− | + | - insa[1,] | |
− | + | - Insa[,2:4] | |
− | + | - Insa[,-3] | |
− | + | ==== Array ==== | |
- 행렬을 2차원으로 확장한것 | - 행렬을 2차원으로 확장한것 | ||
- x<-array(1:24,dim=c(2,3,4)) | - x<-array(1:24,dim=c(2,3,4)) | ||
− | + | ==== List ==== | |
- 키,값 형태 데이터 | - 키,값 형태 데이터 | ||
- listdata<- c("A",c(12,21,33)) | - listdata<- c("A",c(12,21,33)) | ||
− | + | === 반복처리 === | |
− | + | ==== rep() ==== | |
- rep(1:3,times=2,len=7) | - rep(1:3,times=2,len=7) | ||
- rep(1:3,each=3) | - rep(1:3,each=3) | ||
− | + | - 1을 3번,2를 3번,3을 3번 반복 | |
− | + | ==== seq() ==== | |
- seq(from=1,to=12,by=0.5) | - seq(from=1,to=12,by=0.5) | ||
− | + | === 범위처리 === | |
− | + | ==== mean() ==== | |
- 평균 | - 평균 | ||
− | + | ==== range ==== | |
- 범위 | - 범위 | ||
− | + | ==== sort ==== | |
- sort(x,decreasing=TRUE) | - sort(x,decreasing=TRUE) | ||
− | + | ==== length ==== | |
- 길이 | - 길이 | ||
− | + | === 출력 === | |
− | + | ==== cat() ==== | |
- cat() | - cat() | ||
− | + | - 텍스트 출력 | |
− | + | ==== print() ==== | |
− | + | ==== (괄호) ==== | |
− | + | ==== head() ==== | |
− | + | ==== tail() ==== | |
− | + | ==== View() ==== | |
- 데이터를 보여주기 | - 데이터를 보여주기 | ||
− | |||
− | + | ---- | |
+ | |||
+ | === 함수 === | ||
+ | |||
+ | ==== 선언 ==== | ||
fnc_a <- function(){ | fnc_a <- function(){ | ||
345번째 줄: | 352번째 줄: | ||
} | } | ||
− | + | ==== 사용 ==== | |
- fnc_a() | - fnc_a() | ||
− | + | ==== 함수저장 ==== | |
- save(fnc_a,fnc_b,fnc_c,x,file="myfunction.Rdata") | - save(fnc_a,fnc_b,fnc_c,x,file="myfunction.Rdata") | ||
− | + | - 1개의 변수,3개의 함수를 Rdata파일에 같이 저장 | |
− | + | ==== 함수불러오기 ==== | |
- load("myfunction.Rdata" | - load("myfunction.Rdata" | ||
− | + | - ls() | |
− | + | === 조건문 === | |
− | + | ==== runif(1) ==== | |
- 0~1사이 난수 1개 생성 | - 0~1사이 난수 1개 생성 | ||
− | + | ==== if ==== | |
- if(x>0) print(x) | - if(x>0) print(x) | ||
375번째 줄: | 382번째 줄: | ||
} | } | ||
− | + | ==== switch ==== | |
- switch(x[3], | - switch(x[3], | ||
383번째 줄: | 390번째 줄: | ||
) | ) | ||
− | + | === 반복문 === | |
− | + | ==== for ==== | |
- for (i in 1:5) { | - for (i in 1:5) { | ||
393번째 줄: | 400번째 줄: | ||
} | } | ||
− | + | ==== while ==== | |
- while (i <= 10){ | - while (i <= 10){ | ||
400번째 줄: | 407번째 줄: | ||
− | + | ==== repeat ==== | |
- repeat{ | - repeat{ | ||
407번째 줄: | 414번째 줄: | ||
} | } | ||
− | + | === 연산자 === | |
− | + | ==== ! ==== | |
− | + | ==== 가감승제 ==== | |
- + - * / | - + - * / | ||
− | + | ==== 비교 ==== | |
- == | - == | ||
- != | - != | ||
− | + | ==== 그리고 ==== | |
- &,&& | - &,&& | ||
− | + | ==== 또는 ==== | |
- |,|| | - |,|| | ||
− | + | === 기호 ==== | |
− | + | ==== [ i ] ==== | |
- i번째 요소 | - i번째 요소 | ||
− | + | ==== [ ( i ) ] ==== | |
- i번째 리스트 | - i번째 리스트 | ||
− | + | ==== x $ a ==== | |
- x에서 a컬럼 | - x에서 a컬럼 | ||
− | + | ==== x $ "a" ==== | |
- x에서 a컬럼 | - x에서 a컬럼 | ||
− | + | ==== x[ i , j ] ==== | |
- i행 , j열 | - i행 , j열 | ||
− | + | === 문자열 === | |
− | + | ==== grep() ==== | |
- grep("정규식",x,value-TRUE) | - grep("정규식",x,value-TRUE) | ||
- x에서 정규식 문자 찾기 | - x에서 정규식 문자 찾기 | ||
− | + | ==== nchar() ==== | |
- nchar(x) | - nchar(x) | ||
- 문자열 수를 센다 | - 문자열 수를 센다 | ||
− | + | ==== paste ==== | |
- paste(x,y) | - paste(x,y) | ||
- 두개 문자열 합치기 | - 두개 문자열 합치기 | ||
− | + | ==== substr ==== | |
- substr(x,6,8) | - substr(x,6,8) | ||
- 6번째에서 8번째까지 추출 | - 6번째에서 8번째까지 추출 | ||
− | + | ==== strsplit ==== | |
- strsplit(x,split-",") | - strsplit(x,split-",") | ||
- 콤마기준으로 나누기 | - 콤마기준으로 나누기 | ||
− | + | === 정규식 === | |
− | + | ==== \\d ==== | |
− | + | ==== \\s ==== | |
− | + | ==== \\w ==== | |
− | + | ==== \\t ==== | |
− | + | ==== + ==== | |
- 1회이상 | - 1회이상 | ||
− | + | ==== ? ==== | |
- 0 이거나 1회 | - 0 이거나 1회 | ||
− | + | ==== * ==== | |
- 0회이상 | - 0회이상 | ||
− | + | ==== { } ==== | |
- 횟수 반복 | - 횟수 반복 | ||
- {i,j} | - {i,j} | ||
− | + | - i ~ j회 반복 | |
− | + | ==== [:alnum:] ==== | |
- 아파벳+숫자 | - 아파벳+숫자 | ||
- [:alpha:] | - [:alpha:] | ||
− | + | ==== [:blank:] ==== | |
- 공백 | - 공백 | ||
− | + | ==== [:cntrl:] ==== | |
- 제어문자 | - 제어문자 | ||
− | + | ==== [:upper:] ==== | |
- 대문자 | - 대문자 | ||
- [:lower:] | - [:lower:] | ||
− | + | - 소문자 | |
− | |||
− |
2019년 3월 27일 (수) 20:37 판
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
목차
1 R명령어[편집]
1.1 변수정의[편집]
1.1.1 rm()[편집]
- 변수 삭제
1.1.2 ls()[편집]
- 현재 선언해서 사용중인 변수목록
1.1.3 setwd()[편집]
- 작업파일 위치
1.1.4 getwd()[편집]
- 현재 설정된 파일위치
1.1.5 summary([데이터이름])[편집]
- 최솟값,1/4값,중간값,평균,1/3값,최댓값의 써머리 출력
1.1.6 data()[편집]
- 데이터를 사용하겠다는 선언
1.1.7 str()[편집]
- 데이터 구성/자료형 보기
1.1.8 attach()[편집]
- 변수/데이터 를 메모리에 고정
1.1.9 as.numeric()[편집]
- 데이터를 숫자형으로 변환
1.1.10 detach()[편집]
- 메모리에 선언된 변수 해제
1.2 파일읽기/쓰기[편집]
1.2.1 save(x,file="number.Rdata")[편집]
- x변수값을 "number.Rdata"로 저장
1.2.2 load("number.Rdata")[편집]
- 파일내용읽기
=== sink("output.txt")
=== scan("파일이름",what="디렉토리")
- 설정된 디렉토리에서 파일읽기
=== read.table("output.txt",header=T)
- 테이블 형태로 읽기 - read.table("testdata.txt", header=T)
1.3 CSV읽기[편집]
- read.csv("exeldata.csv")
1.4 데이터형[편집]
1.4.1 y[1,][편집]
- 첫행 읽기
1.4.2 y[,1][편집]
- 1열읽기
1.4.3 Vector[편집]
- v<- -5:5
- -5 ~ 5사이값을 할당
- v<-c(-5,5)
- -5,5를 할당
- v<-c(-5:5) - v<-seq(from=-5,to=5,by=1) - vector집합연산
- union(x,y)
- 합집합-중복제거
- intersect
- 차집합
- setdiff(x,y)
- x기준, y값을 빼준것
- is.element(2,x)
- 2가 x의 원소인지 검사
- x<-c(sort(sample(1:99,9)))
- 문자형vector
- unique(x) - match(x,c("A"))
- x의 데이터가 A와 같은지검사하고 같으면 1을 출력,NA는같지않음
- k<-paste(x[1],x[3])
- 벡터x에서 첫번째,세번째 문자를 k에 할당
- paste(x,collapse="%")
- x를 구성하는 문자열을 %로 연결하기
- paste(x,collapse=)
- x를 구성하는 문자열을 공백없이 연결
- substring(m,2:5)
- m객체 문자열에서 2~끝,3~끝,4~끝,5~끝 을 출력
- grep("Co",x)
- x에서 "Co"로 시작하는 것을 찾는다.
- 논리형 vector
- x<- runif(5)
- 0,1 사이의 난수 다섯 개를 만들어 x에 할당
- any(x>0.9)
- x값이 조건에 맞는지 검사
- all(x<0.9)
- 모든x의 값들이 0.9보다 작은지 검사
- is.vector(x) - is.factor(x)
- 데이터형이 팩터인지 확인
- x<-rnum(5)
- 평균이 0인 정규분포하는 변수5개를 x에 할당
1.4.5 Matrix[편집]
- 행렬
- 2차원 동일형 데이터 - 각 컬럼별 다른형 데이터 할당가능 - rbind()
- 벡터데이터를 모아서 열 데이터를 구성 - rbind(array1,array2,array3)
- cbind()
- 행데이터 구성 - cbind(array1,array2,array3)
- apply()
- 배열,행렬등에 함수를 적용한 결과를 벡터,배열,리스트로 변환 - apply(x,1,max)
- x데이터 1열의 최대값
- apply(x,1,sum) - apply(x,2,mean)
- lapply()
- 결과를 리스트로 반환
- sapply()
- 결과를 벡터,배열,행렬로 반환 - sapply(리스트,sum)
- tapply()
- 데이터를 그룹핑한후 함수 적용
- mapply()
- sapply()확장
- 여러개 벡터,리스트로인자를 받고 함수에 인자별 적용 결과를 반환 - mapply(sum,리스트1,리스트2)
- 리스트1+리스트2
- colnames(x)
- 컬럼 이름을 추가
- rownames(x)
- 로우 이름을 추가
- colSums(x)
- 컬럼의합
- rowSums(x)
- 로우의 합
- matrix(x,nrow=3)
- x데이터 열을 3으로 분리하여 행렬 구성 - 데이터를 매트릭스형으로 만들기 함수 - 매트릭스변수x * 3 은?
- 매트릭스 전체에 2를 곱한다.
- matrix(1:12,nrow=3,dimnames=list(c("R1","R2","R3"),c("C1","C2","C3","C4")))
- colSums(x)
- 행렬데이터x의 컬럼 합
- rowSums(x)
- 행렬데이터x의 로우 합
- colMeans - rowMeans
1.4.6 Data Frame[편집]
- data.frame() - 예시
- 데이터만들기
no<- c(1,2,3,4) name<- c("A","B","C","D") ages<-c(52,53,54,55) sex<-c("M","M","F","M")
- 데이터프레임으로 변환
- Insa<-data.frame(No=no,Name=name,Age=ages,Sex=sex)
- 데이터처리
- insa[1,] - Insa[,2:4] - Insa[,-3]
1.4.7 Array[편집]
- 행렬을 2차원으로 확장한것 - x<-array(1:24,dim=c(2,3,4))
1.4.8 List[편집]
- 키,값 형태 데이터 - listdata<- c("A",c(12,21,33))
1.6 범위처리[편집]
1.6.1 mean()[편집]
- 평균
1.6.2 range[편집]
- 범위
1.6.3 sort[편집]
- sort(x,decreasing=TRUE)
1.6.4 length[편집]
- 길이
1.7 출력[편집]
1.7.2 print()[편집]
1.7.3 (괄호)[편집]
1.7.4 head()[편집]
1.7.5 tail()[편집]
1.7.6 View()[편집]
- 데이터를 보여주기
1.9 조건문[편집]
1.9.1 runif(1)[편집]
- 0~1사이 난수 1개 생성
1.9.2 if[편집]
- if(x>0) print(x) - if ( ) { .... }ifelse{ .... }else {... }
1.10 반복문[편집]
1.11 연산자[편집]
1.11.1 ![편집]
1.11.2 가감승제[편집]
- + - * /
1.11.3 비교[편집]
- == - !=
1.11.4 그리고[편집]
- &,&&
1.11.5 또는[편집]
- |,||
1.12 기호 =[편집]
1.12.1 [ i ][편집]
- i번째 요소
1.12.2 [ ( i ) ][편집]
- i번째 리스트
1.12.3 x $ a[편집]
- x에서 a컬럼
1.12.4 x $ "a"[편집]
- x에서 a컬럼
1.12.5 x[ i , j ][편집]
- i행 , j열
1.13 문자열[편집]
1.13.1 grep()[편집]
- grep("정규식",x,value-TRUE) - x에서 정규식 문자 찾기
1.13.2 nchar()[편집]
- nchar(x) - 문자열 수를 센다
1.13.3 paste[편집]
- paste(x,y) - 두개 문자열 합치기
1.13.4 substr[편집]
- substr(x,6,8) - 6번째에서 8번째까지 추출
1.13.5 strsplit[편집]
- strsplit(x,split-",") - 콤마기준으로 나누기