R 에서 문자열 다루기
개요
개발자들이 많이 사용하는 언어들에 비교하면 그 정도가 덜하지만, R 에서도 문자열을 다룰 일이 생각보다 많다. 데이터가 방대하고 제멋대로일수록 이런 사소한 테크닉들이 엄청나게 중요해진다.
팁
nchar()
함수는 단순히 문자열의 길이를 반환한다. 다른 언어를 먼저 접한 사람은 아마 십중팔구length
를 먼저 쳐봤을 것이다.substring()
함수는 그 이름에서 쉽게 짐작할 수 있듯 부분 문자열을 반환하는 함수다. 예시에선 “Oh My God"의 7번째부터 10번째인 “God"를 반환했다.gsub()
함수는 문자열의 일부를 다른 문자열로 모두 바꿔주는 함수다. 당연하지만 대소문자를 구분한다.casefold()
함수는 대문자를 모두 소문자로 바꿔주는 함수다.보통 통계나 언어학쪽에선 대소문자의 구분까진 필요 없으므로 유용하게 쓸 수 있다.strsplit()
함수는 주어진 문자열을 어떤 기준으로 쪼개고 그 벡터를 반환하는 함수다. 보다시피 공백도 가능하고, 심지어는 ’’ 를 입력해서 한글자 단위로도 잘라줄 수 있다.paste0()
함수는 주어진 문자열들을 공백 없이 이어주는 함수다.
물론 그냥 paste()
함수에서 옵션을 쓸수도 있지만 코드가 한결 간결하고 보기 좋아진다.
코드
OMG<-"Oh My God"
nchar(OMG)
substring(OMG,7,10)
gsub('God','Girl', OMG)
casefold(OMG)
strsplit(OMG,' ')