문자열 의 첫 번째 (또는 마지막) n 문자 를 추출하고 싶습니다 . 이것은 Excel의 LEFT()
및 RIGHT()
. 작은 예 :
# create a string
a <- paste('left', 'right', sep = '')
a
# [1] "leftright"
b
의 처음 4 글자와 동일한 문자열 을 생성 하고 싶습니다 a
.
b
# [1] "left"
어떻게해야합니까?
답변:
이 stringr
패키지는 특히 문자열의 오른쪽 부분을 추출하려는 경우 str_sub
보다 사용하기 쉬운 함수를 제공 substr
합니다.
R> str_sub("leftright",1,4)
[1] "left"
R> str_sub("leftright",-5,-1)
[1] "right"
R
:)
stringr
은 당신이 lubridate
.
Rbase 패키지에서 시작하여 Right () 및 Left () 함수를 쉽게 얻을 수 있습니다.
올바른 기능
right = function (string, char) {
substr(string,nchar(string)-(char-1),nchar(string))
}
왼쪽 기능
left = function (string,char) {
substr(string,1,char)
}
이 두 가지 사용자 정의 함수를 Excel에서 left () 및 right ()와 똑같이 사용할 수 있습니다. 유용하게 사용되기를 바랍니다.
당신의 Microsoft Excel에서 오는 경우, 다음과 같은 기능이 유사합니다 LEFT()
, RIGHT()
및 MID()
기능.
# This counts from the left and then extract n characters
str_left <- function(string, n) {
substr(string, 1, n)
}
# This counts from the right and then extract n characters
str_right <- function(string, n) {
substr(string, nchar(string) - (n - 1), nchar(string))
}
# This extract characters from the middle
str_mid <- function(string, from = 2, to = 5){
substr(string, from, to)
}
예 :
x <- "some text in a string"
str_left(x, 4)
[1] "some"
str_right(x, 6)
[1] "string"
str_mid(x, 6, 9)
[1] "text"
stringr
해결책을 제공합니다 .