feat: change to custom function for modifying factors

This commit is contained in:
Andreas Gammelgaard Damsbo 2025-12-02 13:58:37 +01:00
commit 987069dd90
No known key found for this signature in database
5 changed files with 188 additions and 14 deletions

23
man/collapse_spaces.Rd Normal file
View file

@ -0,0 +1,23 @@
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/helpers.R
\name{collapse_spaces}
\alias{collapse_spaces}
\title{Substitue spaces/tabs with single space excluding text within quotes}
\usage{
collapse_spaces(x, preserve_newlines = TRUE)
}
\arguments{
\item{x}{character string}
\item{preserve_newlines}{flag to preserve new lines}
}
\value{
character string
}
\description{
Written assisted by Claude.ai. It is long and possibly too complicated,
but it works
}
\examples{
collapse_spaces(c("cyl", "di sp","s e d","d e'dl e'"))
}

View file

@ -18,7 +18,7 @@ Deparses expression as string, substitutes native pipe and adds assign
\examples{
list(
as.symbol(paste0("mtcars$", "mpg")),
rlang::call2(.fn = "select", !!!list(c("cyl", "disp")), .ns = "dplyr"),
rlang::call2(.fn = "select", !!!list(c("cyl", "di sp")), .ns = "dplyr"),
rlang::call2(.fn = "default_parsing", .ns = "FreesearchR")
) |>
merge_expression() |>

View file

@ -0,0 +1,35 @@
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/update-factor-ext.R
\name{factor_new_levels_labels}
\alias{factor_new_levels_labels}
\title{Simple function to apply new levels and/or labels to factor}
\usage{
factor_new_levels_labels(
data,
variable,
new_variable = TRUE,
new_levels = NULL,
new_labels = NULL,
ignore = "New label"
)
}
\arguments{
\item{variable}{factor variable}
\item{ignore}{character string to ignore in new labels}
\item{new_level}{new levels, same length as original}
\item{new_label}{new labels, same length as original}
}
\value{
factor
}
\description{
Simple function to apply new levels and/or labels to factor
}
\examples{
data_n <- mtcars
data_n$cyl <- factor(data_n$cyl)
factor_new_levels_labels(data_n, "cyl", new_labels = c("four", "New label", "New label"))
}

25
man/unique_names.Rd Normal file
View file

@ -0,0 +1,25 @@
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/update-factor-ext.R
\name{unique_names}
\alias{unique_names}
\title{Make unique variable names}
\usage{
unique_names(new, existing = character())
}
\arguments{
\item{new}{a vector of proposed new variable names}
\item{existing}{a vector of existing variable names}
}
\value{
a vector of unique new variable names
}
\description{
Helper function to create new variable names that are unique
given a set of existing names (in a data set, for example).
If a variable name already exists, a number will be appended.
}
\examples{
unique_names(c("var_x", "var_y", "var_x"), c("var_x", "var_z"))
}