쉼표로 구분 된 벡터 만들기
각 요소가 쉼표로 구분되는 문자형 벡터로 변환하려는 숫자 형 벡터가 하나 있습니다.
> one = c(1:5)
> paste(as.character(one), collapse=", ")
[1] "1, 2, 3, 4, 5"
> paste(as.character(one), sep="' '", collapse=", ")
[1] "1, 2, 3, 4, 5"
그러나 출력이 다음과 같기를 바랍니다.
"1", "2", "3", "4", "5"
붙여 넣기 기능에서 일부 매개 변수가 누락 되었습니까? 도움!?
shQuote
이 작업을 수행하는 가장 좋은 방법 일 것입니다. 특히 원하는 결과를 얻을 수 있습니다.
cat(paste(shQuote(one, type="cmd"), collapse=", "))
작은 따옴표가 괜찮 으면 다음을 사용할 수 있습니다.
paste(shQuote(one), collapse=", ")
type="cmd"
실제로 대부분의 컨텍스트에서 실제로 유용한 이스케이프 된 따옴표를 cat
제공하지만 이스케이프되지 않은 따옴표로 어딘가에 표시하려는 경우 제공합니다.
해당 출력이 포함 된 문자형 벡터를 원한다고 말하지만이 질문을 찾는 다른 사람들은 대신 다음 함수 중 하나를 찾을 수 있습니다.
첫째, R에 대한 입력을 위해 출력을 준비하는 방법입니다. 다음과 dput
같습니다.
> dput(as.character(one))
c("1", "2", "3", "4", "5")
둘째, csv 파일을 출력하는 방법 ( write.csv
또는 write.table
. 이러한 함수는 file
여기에서 사용되지 않는 매개 변수 를 사용하여 파일로 직접 출력합니다.
> write.table(matrix(as.character(one),nrow=1), sep=",",
row.names=FALSE, col.names=FALSE)
"1","2","3","4","5"
> write.csv(matrix(as.character(one),nrow=1),row.names=FALSE)
"V1","V2","V3","V4","V5"
"1","2","3","4","5"
문자 벡터가 아닌 문자열로 출력을 원한다고 가정하면 다음을 시도 할 수 있습니다.
paste("'",as.character(one),"'",collapse=", ",sep="")
그것은 당신에게 큰 따옴표가 아닌 숫자 주위에 작은 따옴표를 제공하지만 기본적으로 당신이 원하는 것입니다.
그리고 항상 이스케이프하여 큰 따옴표를 얻을 수 있습니다.
rs <- paste("\"",as.character(one),"\"",collapse=", ",sep="")
cat(rs)
큰 따옴표로 원하는 것을 인쇄해야합니다.
뿐만 아니라 shQuote
, 기능을 참조 sQuote
하고 dQuote
각각 단일 및 이중 따옴표로 텍스트를 바꿈. 또한 options(useFancyQuotes=FALSE)
일반 (단방향) ASCII 따옴표를 가져 오도록 설정 해야합니다.
toString과 비슷한 것
toString(paste0("'",1:10,"'") )
기능을 사용하려면 Noah의 답변에 추가하십시오 paste
.
paste(shQuote(one, type="sh"), collapse=", ")
당신에게 줄 것 :
[1] '1','2','3','4','5'
참고 URL : https://stackoverflow.com/questions/6347356/creating-a-comma-separated-vector
'Program Tip' 카테고리의 다른 글
각 컴파일에서 "출력 창"표시 비활성화 (0) | 2020.10.21 |
---|---|
IISExpress 사용자 인터페이스 (0) | 2020.10.21 |
여러 개의 작은 Azure 저장소 Blob 컨테이너 (각각 일부 Blob 포함) 또는 수많은 Blob이 포함 된 하나의 정말 큰 컨테이너가 더 나은가요? (0) | 2020.10.21 |
비교적 큰 Flask 애플리케이션을 구성하는 방법은 무엇입니까? (0) | 2020.10.21 |
MySQL 데이터베이스에 연결하는 방법은 무엇입니까? (0) | 2020.10.21 |