R/names.r

Defines functions variable_names `dimnames<-.mutaframe` `names<-.mutaframe` dimnames.mutaframe names.mutaframe

Documented in variable_names

#' @S3method names mutaframe
names.mutaframe <- function(x, ...) attr(x, "col.names")

#' @S3method dimnames mutaframe
dimnames.mutaframe <- function(x, ...) {
  list(attr(x, "row.names"), attr(x, "col.names"))
}

#' @S3method "names<-" mutaframe
`names<-.mutaframe` <- function(x, ..., value) {
  attr(x, "col.names") <- value
  x
}

#' @S3method "dimnames<-" mutaframe
`dimnames<-.mutaframe` <- function(x, ..., value) {
  attr(x, "row.names") <- value[[1]]
  attr(x, "col.names") <- value[[2]]
  x
}

#' Make valid variable names
#' @param var_names variable names
variable_names <- function(var_names) {
  no_name <- is.na(var_names) | nzchar(var_names) == 0
  var_names[no_name] <- paste("X", seq_len(sum(no_name)), sep = "")

  make.names(var_names, unique = T)
}

Try the plumbr package in your browser

Any scripts or data that you put into this service are public.

plumbr documentation built on May 7, 2022, 1:05 a.m.