월요일
paste
- paste
1 2 3 4 5 6 7 8 9
myname <- "Jason Bourne" paste("My name is", myname, sep=" ") file_id = 1533 paste("Dataset_",file_id,".txt", sep="") paste("A","B",collapse = '/') paste(c("A","B"), collapse = '/') paste(c("A","B"), 1:2, collapse = '/') paste(c("A","B"), 1:2, sep='?', collapse = '/')
paste
함수의 기본 구분자는 스페이스바 공백으로 되어있다. 여러가지 인수들을 하나의 문자열로 이어붙이는데, 이때 인수 구분을 sep에 설정한 구분자로 붙여준다. collapse 옵션은 벡터로서 문자열을 합칠 때 적용되는 문자열이다. 7번째 코드를 보면paste(c("A","B"), 1:2, collapse = '/')
라고 적혀있다. 이 코드의 출력값은 A 1/B 2이다.
문자열 분석
- 문자열 분석
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
test <- c("abcdefg", "AFFY1245820") nchar(test) f_name <- "AFFY1245820" substr(f_name,5,nchar(f_name)) y = c("ax_1234", "ax_3456") substr(y,4,7) strtrim("ABCDEF",3) strtrim(rep("abcdef",3), c(1,4,10)) x <- c(as = "asfef", qu = "qwerty", "yuiop[", "b", "stuff.blah.yech") strsplit(x, "e") strsplit(x, "[a-e]") strsplit(x, "[aleu]") unlist(strsplit("a.b.c", ".")) unlist(strsplit("a.b.c", "[.]")) unlist(strsplit("a.b.c", ".", fixed = TRUE))
간단한 문자열 분석 함수들이다.
- nchar는 해당 문자열의 갯수를 반환해준다.
substr
은 문자열의 일부분을 추출하는 함수이다. 시작위치와 마지막위치를 반환해주면 해당 길이만큼 추출해준다. 일반적으로 공통적인 파일이름을 가지고 넘버링만 다른 경우에서 넘버링을 추출하거나 할 때 사용한다.strtrim
은 문자열을 잘라내는 역할을 한다. 언뜻보면substr
과 비슷하다고 느낄 수 있다. 하지만strtrim
은 특정 위치를 잘라내는게 아닌 앞에서 부터 잘라낸다.strsplit
은 가장 많이 쓰는 문자열 분석 함수이다. 특정 문자열을 정규 표현식을 기준으로 자르게 된다. 이때 반환 값은 리스트 형태로 반환하게 된다. 일반적으로strsplit
에는 3개의 인수를 건드린다. split, fixed, perl을 건드린다.- 이때 3개 모두 FALSE인 경우는 default로 Extended regular expression(확장 정규 표현식)을 사용한다. 확장 정규 표현식이란 일반적으로 Front-End에서 사용하는 정규표현식을 말한다.
- fixed가 TRUE인 경우는 문자표현 그대로 사용한다.
- perl이 TRUE인 경우에는 perl-like regular expression을 이용한다.
목요일
경로 설정
- 경로 설정
1 2 3 4 5 6 7
getwd() setwd('Documents') getwd() dir.create("example2") getwd() unlink("example2",recursive = T) dir()
일반적으로 통계 데이터를 분석할 때는 대규모 파일을 사용하는 경우가 많다. csv파일, xlsx파일들로부터 데이터를 가져온다. 이때, 해당경로로 이동을 해야한다. 그 때 사용하는 명령어들이다.
getwd()
는 현재 경로를 반환해준다.setwd(경로)
는 해당 경로로 이동을 하게 해준다.dir.create(경로)
는 directory create로, 현재 경로에 특정이름의 폴더를 만든다.- 폴더를 지울 때는 unlink로 해당 폴더를 지운다. 내부 파일이 있는 폴더를 지울 때는 반드시 recursive를 TRUE로 해준다.
현재 작업 폴더 관련 함수
- 현재 작업 폴더 관련 함수
1 2 3 4 5 6 7 8
test = dir("/Users/kibeompark/Documents") test t1=grep("^[A-Ca-c][a-z]",test) t1 t2=grep("[.]pkg$",test,value=T) t2 t3=grep("^[BbCc].+pkg$",test,value=T) t3
이제 작업 폴더에 무슨 파일이 있는 지 확인하고 찾을 수 있다.
- 우선 dir을 통해서 특정 경로의 파일 이름들을 문자열 벡터로 변환을 해준다.
- grep를 통해서 특정 정규표현식에 매칭되는 파일의 인덱스 위치를 반환해준다. 예제 코드는 A-C,a-c로 시작하고 a-z가 들어간 파일들을 찾는다.
- 5번째, 7번째 코드처럼 작성을 하면 특정 확장자 파일을 찾을 수 있다.
Comments powered by Disqus.