randomNames(n, gender, ethnicity, which.names="both", name.order="last.first", name.sep=", ", sample.with.replacement=TRUE, return.complete.data=FALSE)
n | OPTIONAL. Positive integer indicating how many name to produce. Best to use when no gender or ethnicity data is provided and one simply wants |
---|---|
gender | OPTIONAL. A vector indicating the genders for the names to be calculated. The maximum of |
ethnicity | OPTIONAL. A vector indicating the ethnicities for the names to be calculated. The maximum of
|
which.names | OPTIONAL. One of |
name.order | OPTIONAL. If |
name.sep | OPTIONAL. If |
sample.with.replacement | Boolean argument (defaults to TRUE) indicating whether sampling is done with replacement. |
return.complete.data | Boolean argument (defaults to FALSE) indicating whether to return data including gender and ethnicity codes used for name construct. If set to TRUE, data is returned as a data.frame/data.table. |
Typical use of the function is to submit a vector of genders and ethnicities to derived a gender and ethnicity representative vector of first and/or last names.
Function returns a character vector containing first and/or last names.
randomNames() ## Returns a single name in "last, first" format#> [1] "Caudillo, Jerel"randomNames(5, which.names="first") ## Returns 5 first names#> [1] "Patrick" "Randall" "San" "Caitlin" "Zaidaan"randomNames(5, return.complete.data=TRUE) ## Returns entire data.table#> gender ethnicity first_name last_name #> 1: 0 1 Mahpiya Rockwell #> 2: 1 6 Mastoora el-Mohamed #> 3: 1 3 Myoni Hale #> 4: 1 5 Shayla Dunn #> 5: 0 6 Muaaid al-Hamidtest.df <- data.frame(GENDER=sample(0:1, 100, replace=TRUE), ETHNICITY=sample(1:6, 100, replace=TRUE)) test.names <- randomNames(gender=test.df$GENDER, ethnicity=test.df$ETHNICITY) head(test.names)#> [1] "Palmier, Mackenzie" "el-Abraham, Mardiyya" "Hysaw, Dante" #> [4] "Ayala, Karla" "Coleman, Abeni" "Sahai, Yer"ethnicities <- c("African American", "Hispanic", "Asian", "White", "Native American") genders <- c("Female", "Male") test.df <- data.frame(GENDER=sample(genders, 100, replace=TRUE), ETHNICITY=sample(ethnicities, 100, replace=TRUE)) test.names <- randomNames(gender=test.df$GENDER, ethnicity=test.df$ETHNICITY) head(test.names)#> [1] "Landin, Anthony" "Gutierrez, Alexandria" "Lobato, Andrew" #> [4] "Mccallum, Hannah" "Nelson, Lolita" "Prinzi, Cali"