多个返回值

函数

get_first_last <- function(data) {
  if (length(data) == 0) {
    return(list(first = -1, last = -1))
  }
  # Several values come back as one list
  list(first = data[1],
       last = data[length(data)])
}

lst <- c(2, 3, 5)
result <- get_first_last(lst)

# No unpacking: take the parts by name
first <- result$first
# first = 2
last <- result$last
# last = 5

str(result)
cat("first =", first, "\n")
cat("last =", last, "\n")