# Take subset of data
df1 <- mtcars[1:5, c("mpg", "cyl") ]
# Print current state
print(df1)
# mpg cyl
# Mazda RX4 21.0 6
# Mazda RX4 Wag 21.0 6
# Datsun 710 22.8 4
# Hornet 4 Drive 21.4 6
# Hornet Sportabout 18.7 8
# Assign formats
attr(df1$mpg, "format") <- value(condition(x >= 20, "High"),
condition(x < 20, "Low"))
attr(df1$cyl, "format") <- function(x) format(x, nsmall = 1)
# Display formatted data
fdata(df1)
# mpg cyl
# Mazda RX4 High 6.0
# Mazda RX4 Wag High 6.0
# Datsun 710 High 4.0
# Hornet 4 Drive High 6.0
# Hornet Sportabout Low 8.0
# Extract format list
lst <- formats(df1)
# Alter format list and reassign
lst$mpg <- value(condition(x >= 22, "High"),
condition(x < 22, "Low"))
lst$cyl <- function(x) format(x, nsmall = 2)
formats(df1) <- lst
# Display formatted data
fdata(df1)
# mpg cyl
# Mazda RX4 Low 6.00
# Mazda RX4 Wag Low 6.00
# Datsun 710 High 4.00
# Hornet 4 Drive Low 6.00
# Hornet Sportabout Low 8.00
# Clear formats
formats(df1) <- NULL
# Confirm formats are cleared
formats(df1)
# list()
Run the code above in your browser using DataLab