-
Notifications
You must be signed in to change notification settings - Fork 0
Paste() vs paste0() in R
Probably, function paste is one of the most used function in R. The objective of this function is concatenate a series of strings.
paste("file", "number", "32")
[1] "file number 32"
paste("file", "number", "32", sep = "_")
[1] "file_number_32" The arguments of the function are:
args(paste) function (..., sep = " ", collapse = NULL) … = The space to write the series of strings.
sep = The element which separates every term. It should be specified with character string format.
collapse = The element which separates every result. It should be specified with character string format and it is optional. i
We can see an example where both arguments works together:
paste(rep("file", 5), rep("number", 5), seq(1,5,1), sep = "_")
[1] "file_number_1" "file_number_2" "file_number_3" "file_number 4" "file_number_5"
paste(rep("file", 5), rep("number", 5), seq(1,5,1), sep = "_", collapse = ", ")
[1] "file_number_1, file_number_2, file_number_3, file_number_4, file_number_5" As we can see in fourth example, if we specify a value in argument collapse, we obtain an unique string instead of five as in the previous example
The difference between paste() and paste0() is that the argument sep by default is ” ” (paste) and “” (paste0).
name_village <- paste("Ma", "con", "do") name_village [1] "Ma con do"
name_village <- paste("Ma", "con", "do", sep = "") name_village [1] "Macondo"
name_village <- paste0("Ma", "con", "do") name_village [1] "Macondo" In conclusion, paste0() is faster than paste() if our objective is concatenate strings without spaces because we don’t have to specify the argument sep.