패키지를 설치하는 동안 대소 문자를 무시하거나 대소 문자를 구분하지 않을 수있는 방법이 있습니까?패키지 설치 중 대소 문자를 구별하지 않는 패키지 설치 (대소 문자 무시)
예, RWeka
패키지. install.packages("rweka")
처럼 설치하거나 어떤 식 으로든 ignore.case = TRUE
을 설정할 수 있습니까? 그런 식의 인수는 없습니다. install.packages()
패키지를 설치하는 동안 대소 문자를 무시하거나 대소 문자를 구분하지 않을 수있는 방법이 있습니까?패키지 설치 중 대소 문자를 구별하지 않는 패키지 설치 (대소 문자 무시)
예, RWeka
패키지. install.packages("rweka")
처럼 설치하거나 어떤 식 으로든 ignore.case = TRUE
을 설정할 수 있습니까? 그런 식의 인수는 없습니다. install.packages()
패키지 이름은 대/소문자를 구분합니다. 따라서 사례를 무시하면 고유 한 일치 항목을 얻을 수 없습니다.
#get list of packages
packages <- available.packages()[,"Package"]
#find matches by ignoring case
my_packs <- packages[grep("^rweka$",packages,ignore.case=TRUE)]
#install - beware of multiple matches
install.packages(my_packs)
참고 grep
에서 정규 표현식은 시작과 문자열의 끝을 지정하고, 그렇지 않으면 당신은 당신이로 원하는 것을 포함 더 많은 패키지를 끝낼 수 있습니다 : 데 당신이 원하는 것을 달성하기 위해 가장 좋은 방법은, 말했다 하위 문자열 당신의 ~/.Rprofile
에서
install_p <- function(x) {
av <- available.packages()
av <- setNames(av[,"Package"], tolower(av[,"Package"]))
install.packages(av[x])
}
을하며 안전 할 것입니다 :
당신과 함께 R을 보강 할 수 있습니다
install_p("rweka")
이후 : 롤랜드에서 언급 한 바와 같이
sum(duplicated(tolower(unname(av[,"Package"]))))
가 0
입니다 그의 코멘트.
CRAN 은 R 패키지의 용량이 커짐에 따라 자체 정책을 완화합니다 (현재 10K에 가깝습니다).하지만 여전히 일치하는 이름을 허용하지 않는다고 생각됩니다.
이론상으로 두 개의 패키지 RWeka와 rweka가있을 수 있습니다 (CRAN이 허용하지 않지만). 그러나 그럴 필요는 없습니다. – Roland