2015-01-17 3 views
2

(.packages.())의 결과를 인용 부호와 쉼표로 된 "package-name","package-name","package-name" 형식으로 제시해야합니다. 나는 printpaste으로 시도했지만 ... 4 시간이 지나도 올바른 결과를 얻을 수 없었습니다!검색 결과 (문자열)

paste((.packages()),collapse=",") 

거의 작동하지만 따옴표는 매우 처음과 마지막 위치에만 있습니다. 그리고 collapse="",""이 작동하지 않습니다. 아무도 도와 줄 수 있습니까?

+0

붕괴 인수가 있었을 중' "\", \ ""'또는' ' ","''. 큰 따옴표로 묶은 문자를 실제로 사용하려면 "외부"에 작은 따옴표를 사용할 수 있습니다. –

답변

2

최고의 두 번 paste을 사용하여이 시도 :

paste0('"',paste((.packages()),collapse='","'),'"') 
2

내가 패키지 따옴표를 추가하는 대신 .packages()sprintf('"%s"', .packages())을 사용하는 것을 제외하고이, 당신은 무엇을했다 유사합니다

> paste(sprintf('"%s"', .packages()), collapse=",") 
[1] "\"stats\",\"graphics\",\"grDevices\",\"utils\",\"datasets\",\"methods\",\"base\"" 

당신은 모두 \"에 의해 던져 질 수도 있지만 그게 어떻게 R print sa dou ble-quote (실제로는 단일 문자, 큰 따옴표). 예상대로 파일/파일 핸들에 기록 cat 또는 다른 기능에게 전달하면 상황이 모양 :

> cat(paste(sprintf('"%s"', .packages()), collapse=",")) 
"stats","graphics","grDevices","utils","datasets","methods","base" 
0

catpaste이 그것을 할 수 있습니다;

cat("\"", paste0( .packages()[1:15] , collapse="\", \""), "\"", sep="") 
#"stats4", "latticeExtra", "RColorBrewer", "lattice", "sp", "Formula", "cluster", "sos", "brew", "stats", "graphics", "grDevices", "utils", "datasets", "methods" 

당신은 내가 끝을 정돈하고 디스플레이 모양이 덜 비밀 만들기 위해 고양이를 사용하는 이유 당신이 볼 수있는 풀 버전의 콘솔 출력을 보면 :

paste0( .packages()[1:15] , collapse="\", \"") 
#[1] "stats4\", \"latticeExtra\", \"RColorBrewer\", \"lattice\", \"sp\", \"Formula\", \"cluster\", \"sos\", \"brew\", \"stats\", \"graphics\", \"grDevices\", \"utils\", \"datasets\", \"methods" 

을이 I를 통과 한 후 agstudy의 기여와 크게 다르지 않다는 것을 깨달았지만, cat 기능을 사용하면 표시되는 내용을보다 완벽하게 제어 할 수 있습니다. cat의 단점은 개체에 출력을 할당 할 수 없다는 것입니다. 당신이 이런 짓을하면 res에 값이 없을 것이다 :

res <- cat("\"", paste0( .packages()[1:15] , collapse="\", \""), "\"") 
res 
# NULL