I have developed some new functions based on the previous Jenny Brian's previous fooffactor package and wanna check out the new functionality?

Jason's self made function via sort_factor():

library(foofactors)
c <- factor(c("character", "hits", "your", "eyeballs")) 
levels(c)
levels(sort_factor(c))

Jason's self made function via check_factor():

library(foofactors)
a <- check_factor(c("character", "hits", "your", "eyeballs")) # This is not a factor
b <- check_factor(c("but", "integer", "where it", "counts", "but")) # This is a factor

Can we soften some of their sharp edges?

Binding two factors via fbind():

library(foofactors)
a <- factor(c("character", "hits", "your", "eyeballs"))
b <- factor(c("but", "integer", "where it", "counts"))

Simply catenating two factors leads to a result that most don't expect.

c(a, b)

The fbind() function glues two factors together and returns factor.

fbind(a, b)

Often we want a table of frequencies for the levels of a factor. The base table() function returns an object of class table, which can be inconvenient for downstream work. Processing with as.data.frame() can be helpful but it's a bit clunky.

set.seed(1234)
x <- factor(sample(letters[1:5], size = 100, replace = TRUE))
table(x)
as.data.frame(table(x))

The freq_out() function returns a frequency table as a well-named tbl_df:

freq_out(x)


arthursunbao/foofactors documentation built on May 29, 2019, 2:33 p.m.