levels package:base R Documentation _L_e_v_e_l_s _A_t_t_r_i_b_u_t_e_s _D_e_s_c_r_i_p_t_i_o_n: 'levels' provides access to the levels attribute of a variable. The first form returns the value of the levels of its argument and the second sets the attribute. The assignment form ('"levels<-"') of 'levels' is a generic function and new methods can be written for it. The most important method is that for 'factor's: _U_s_a_g_e: levels(x) levels(x) <- value _A_r_g_u_m_e_n_t_s: x: an object, for example a factor. value: A valid value for 'levels(x)'. For the default method, 'NULL' or a character vector. For the 'factor' method, a vector of character strings with length at least the number of levels of 'x', or a named list specifying how to rename the levels. _D_e_t_a_i_l_s: For the factor assignment method, a 'NA' in 'value' causes that level to be removed from the levels and the elements formerly with that level to be replaced by 'NA'. _R_e_f_e_r_e_n_c_e_s: Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) _The New S Language_. Wadsworth & Brooks/Cole. _S_e_e _A_l_s_o: 'nlevels'. _E_x_a_m_p_l_e_s: ## assign individual levels x <- gl(2, 4, 8) levels(x)[1] <- "low" levels(x)[2] <- "high" x ## or as a group y <- gl(2, 4, 8) levels(y) <- c("low", "high") y ## combine some levels z <- gl(3, 2, 12) levels(z) <- c("A", "B", "A") z ## same, using a named list z <- gl(3, 2, 12) levels(z) <- list(A=c(1,3), B=2) z ## we can add levels this way: f <- factor(c("a","b")) levels(f) <- c("c", "a", "b") f f <- factor(c("a","b")) levels(f) <- list(C="C", A="a", B="b") f