Skip to content

Commit

Permalink
setattr() is unexported and set_label() function is added
Browse files Browse the repository at this point in the history
  • Loading branch information
seokhoonj committed Mar 12, 2024
1 parent 3a744e2 commit 4a27d5e
Show file tree
Hide file tree
Showing 4 changed files with 53 additions and 6 deletions.
2 changes: 1 addition & 1 deletion NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@ export(row_sum)
export(set_colnames)
export(set_dimnames)
export(set_dt)
export(set_label)
export(set_one_before_first_one)
export(set_rownames)
export(set_tibble)
export(set_zero_not_first_pos)
export(setattr)
export(sizeof)
export(sum_by_colnames)
export(sum_by_dimnames)
Expand Down
29 changes: 26 additions & 3 deletions R/utils.R
Original file line number Diff line number Diff line change
Expand Up @@ -114,14 +114,37 @@ paste_list <- function(x, sep = "|") {
#'
#' @examples
#' # set attributes
#' \donttest{df <- data.frame(a = 1:3, b = 4:6)
#' \dontrun{df <- data.frame(a = 1:3, b = 4:6)
#' setattr(df, "flag", TRUE)
#' attr(df, "flag")}
#'
#' @export
setattr <- function(x, name, value)
data.table::setattr(x, name, value)

#' Set labels
#'
#' Set column labels for a data frame.
#'
#' @param df a data.frame
#' @param labels a string vector specifying labels to describe columns
#' @param cols a string vector specifying columns
#'
#' @examples
#' # set labels
#' \dontrun{df <- data.frame(Q1 = c(0, 1, 1), Q2 = c(1, 0, 1))
#' set_label(df, labels = c("Rainy?", "Umbrella?"))
#' View(df)}
#'
#' @export
set_label <- function(df, labels, cols) {
if (missing(cols))
cols <- names(df)
if (length(cols) != length(labels))
stop("the length of columns and the length of labels are different.")
lapply(seq_along(cols),
function(x) data.table::setattr(df[[cols[[x]]]], "label", labels[[x]]))
invisible(df)
}

#' Set data.frame to data.table
#'
#' Set data.frame to data.table class.
Expand Down
25 changes: 25 additions & 0 deletions man/set_label.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions man/setattr.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 4a27d5e

Please sign in to comment.