"R 기본"의 두 판 사이의 차이
DB CAFE
(→R명령어) |
(→R명령어) |
||
1번째 줄: | 1번째 줄: | ||
==== R명령어 ==== | ==== R명령어 ==== | ||
− | + | === 변수정의 === | |
### rm() | ### rm() |
2019년 3월 27일 (수) 20:15 판
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
1 R명령어[편집]
2 변수정의[편집]
- rm()
- 변수 삭제Í
- ls()
- 현재 선언해서 사용중인 변수목록
- setwd()
- 작업파일 위치
- getwd
- 현재 설정된 파일위치
- summary([데이터이름])
- 최솟값,1/4값,중간값,평균,1/3값,최댓값의 써머리 출력
- data()
- 데이터를 사용하겠다는 선언
- str()
- 데이터 구성/자료형 보기
- attach()
- 변수/데이터 를 메모리에 고정
- as.numeric()
- 데이터를 숫자형으로 변환
- detach()
- 메모리에 선언된 변수 해제
- 파일읽기/쓰기
- save(x,file="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)
- CSV읽기
- read.csv("exeldata.csv")
- 데이터형
- y[1,]
- 첫행 읽기
- y[,1]
- 1열읽기
- 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에 할당
- 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() - 예시
- 데이터만들기
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차원으로 확장한것 - x<-array(1:24,dim=c(2,3,4))
- List
- 키,값 형태 데이터 - listdata<- c("A",c(12,21,33))
- 반복처리
- rep()
- rep(1:3,times=2,len=7) - rep(1:3,each=3)
- 1을 3번,2를 3번,3을 3번 반복
- seq()
- seq(from=1,to=12,by=0.5)
- 범위처리
- mean()
- 평균
- range
- 범위
- sort
- sort(x,decreasing=TRUE)
- length
- 길이
- 출력
- cat()
- cat()
- 텍스트 출력
- print()
- (괄호)
- head()
- tail()
- View()
- 데이터를 보여주기
- 함수
- 선언
fnc_a <- function(){
x<-10 y<-20 result<-x+y return(result)
}
- 사용
- fnc_a()
- 함수저장
- save(fnc_a,fnc_b,fnc_c,x,file="myfunction.Rdata")
- 1개의 변수,3개의 함수를 Rdata파일에 같이 저장
- 함수불러오기
- load("myfunction.Rdata"
- ls()
- 조건문
- runif(1)
- 0~1사이 난수 1개 생성
- if
- if(x>0) print(x) - if ( ) { .... }ifelse{ .... }else {... }
- switch
- switch(x[3],
"1" = print("one")
, "2" = print("one") , print("Error") )
- 반복문
- for
- for (i in 1:5) {
for (j in 1:5) { .... }
}
- while
- while (i <= 10){
....
}
- repeat
- repeat{
.... if(...) break;
}
- 연산자
- !
- 가감승제
- + - * /
- 비교
- == - !=
- 그리고
- &,&&
- 또는
- |,||
- 기호
- [ i ]
- i번째 요소
- [ ( i ) ]
- i번째 리스트
- x $ a
- x에서 a컬럼
- x $ "a"
- x에서 a컬럼
- x[ i , j ]
- i행 , j열
- 문자열
- grep()
- grep("정규식",x,value-TRUE) - x에서 정규식 문자 찾기
- nchar()
- nchar(x) - 문자열 수를 센다
- paste
- paste(x,y) - 두개 문자열 합치기
- substr
- substr(x,6,8) - 6번째에서 8번째까지 추출
- strsplit
- strsplit(x,split-",") - 콤마기준으로 나누기
- 정규식
- \\d
- \\s
- \\w
- \\t
- +
- 1회이상
- ?
- 0 이거나 1회
- *
- 0회이상
- { }
- 횟수 반복 - {i,j}
- i ~ j회 반복
- [:alnum:]
- 아파벳+숫자 - [:alpha:]
- [:blank:]
- 공백
- [:cntrl:]
- 제어문자
- [:upper:]
- 대문자 - [:lower:]
- 소문자
- XMind: ZEN - Trial Version*