函数用法
paste (…, sep = “ “, collapse = NULL)
用法详解
其中...
表示一个或多个R可以被转化为字符型的对象;参数sep
表示分隔符,默认为空格;参数collapse
可选,如果不指定值,那么函数paste的返回值是自变量之间通过sep指定的分隔符连接后得到的一个字符型向量;如果为其指定了特定的值,那么自变量连接后的字符型向量会再被连接成一个字符串,之间通过collapse的值分隔。
案例展示
当不添加后置参数时,paste函数和as.character函数的效果是一样的:
paste(1:12)
## [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12"
paste0(1:12) #same
## [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12"
as.character(1:12) #same
## [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12"
paste函数把它的自变量连成一个字符串,中间默认用空格分开,如:
paste("Hello","world")
## [1] "Hello world"
连接的自变量可以是向量,这时各对应元素连接起来,长度不相同时较短的向量被重复使用。如:
paste("A", 1:6, sep = "")
## [1] "A1" "A2" "A3" "A4" "A5" "A6"
如果希望返回的结果是一个元素,使用paste(x,collapse)
来实现。
paste(letters[1:6],collapse=",")
## [1] "a,b,c,d,e,f"
同时,可以结合sep
参数来使用:
paste("A", 1:6, sep = "",collapse=",")
## [1] "A1,A2,A3,A4,A5,A6"
sep的优先级应该是高于collapse参数的,因此是先执行sep的操作,再执行collpase
paste0()函数
paste (..., sep = " ", collapse = NULL)
paste0(..., collapse = NULL)
两者对比不难发现:
paste0(..., collapse)
等同于 paste(..., sep = "", collapse)
, 效率更高些,其他用法相同