| transform {dformula} | R Documentation |
Transform varibles
Description
Mutate input variables using a formula.
Usage
transform(from, formula, as = NULL,
na.remove = FALSE, logic_convert = TRUE, ...)
Arguments
from |
a data.frame object with variables |
formula |
a formula indicating the operation to create new varibles. Look at the detail section for explanantion. |
as |
a character vector with names of new variables. |
na.remove |
a logical value indicating whether NA values should be removed. |
logic_convert |
logical value indicating if the new logical varaible are converted to |
... |
further arguments |
Details
The formula is composed of two part:
column_names ~ trasformed_variables
the left-hand side are the names of the column to transform, and the right-hand the operations applied to the selected columns, using the I() function.
For example:
column_names1 + column_names2 ~ I(log(column_names1)) + I(column_names2/100)
the column_names1 is mutated in log(column_names1) and column_names2 is divided by 100.
If na.remove is set to TRUE, variables are mutaded, and then the observation with missing are removed.
Value
Returns the original data.frame object with mutaded varaibles.
Author(s)
Alessio Serafini
Examples
data("airquality")
dt <- airquality
head(transform(from = dt, Ozone ~ I(Ozone-Ozone)))
head(transform(from = dt, Ozone ~ log(Ozone)))
head(transform(from = dt, Ozone ~ I(Ozone>5)))
head(transform(from = dt, Ozone ~ I(Ozone>5), logic_convert = TRUE))
head(transform(from = dt, ~ log()))
head(transform(from = dt, . ~ log()))
head(transform(from = dt, NULL ~ log()))
head(transform(from = dt, Ozone + Day ~ log()))
head(transform(from = dt, Ozone + Day ~ log(Ozone/100) + exp(Day)))
head(transform(from = dt, Ozone ~ log()))
head(transform(from = dt,Ozone + Wind ~ C(log(1))))
head(transform(from = dt,Ozone + Wind ~ log(Ozone) + C(10)))
head(transform(from = dt, Ozone + Wind~ C(log(Ozone))))
foo <- function(x, a = 100){return(x-x + a)}
head(transform(from = dt, Ozone + Wind ~ foo(a = 100)))
head(transform(from = dt, . ~ foo(a = 100)))
head(transform(from = dt, Ozone + Wind ~ log(log(1))))