README.md

NOTE: This is a toy package created for expository purposes, for the second edition of R Packages. It is not meant to actually be useful. If you want a package for factor handling, please see forcats.

foofactors

Factors are a very useful type of variable in R, but they can also be very aggravating. This package provides some helper functions for the care and feeding of factors.

Installation

devtools::install_github("11rchitwood/foofactors")

Quick demo

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)
#> [1] 1 3 4 2 1 3 4 2

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

fbind(a, b)
#> [1] character hits      your      eyeballs  but       integer   where it 
#> [8] counts   
#> Levels: but character counts eyeballs hits integer where it your

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.

set.seed(1234)
x <- factor(sample(letters[1:5], size = 100, replace = TRUE))
table(x)
#> x
#>  a  b  c  d  e 
#> 25 26 17 17 15

The fcount() function returns a frequency table as a tibble with a column of factor levels and another of frequencies:

fcount(x)
#> # A tibble: 5 x 2
#>   f         n
#>   <fct> <int>
#> 1 b        26
#> 2 a        25
#> 3 c        17
#> 4 d        17
#> 5 e        15


11rchitwood/foofactors documentation built on May 8, 2019, 7:36 a.m.