데이터 세트에는 수퍼 히어로에 대한 정보가 들어 있습니다.R에서 apply와 함께 substring 함수를 사용하는 방법은 무엇입니까?
# package loading
library(fivethirtyeight)
# data opening
data(package ="fivethirtyeight")
data(comic_characters)
for (i in 1:length(comic_characters$name))
{
bracket[i] <- which(strsplit(comic_characters$name[i], "")[[1]] == "(")
comic_characters$name[i] <- substr(comic_characters$name[i], start = 1, stop = bracket[i]-2)
}
이 어떻게 (루프없이) 기능을 적용하여 같은 일을 할 수있는 :이 코드는 문자열 '이름'에서 성가신 브래킷 부분을 제거? 시도한 방법은 다음과 같습니다.
bracket = sapply(sapply(strsplit(comic_characters$name, ''), function(x)
which(x == '(')), `[`, 1)
# here comes the problem:
comic_characters$name <- lapply(x, function(x)
substr(comic_characters$name, start=1, stop=bracket[i]-2))
어떻게하면됩니까? 미리 감사드립니다.
도움 주셔서 감사합니다. 적용 함수를 사용하여 문제를 해결하는 방법을 보여 주시겠습니까? –