Función que genera nombres aleatorios

Objetivo: Función que genera nombres completos

Creando los dos vectores

nombres <- c('RUBEN', 'CARLOS', 'PATY', 'ALEJANDRO', 'LUISA',
             'ROGELIO', 'ANDREA', 'FABIOLA', 'MARIA', 'FERNANDO')
apellidos <- c('GONZALEZ', 'MEDINA', 'ROBLES', 'JUAREZ', 'RUIZ',
               'PIZARRO', 'RODRIGUEZ', 'CARRETE', 'CAMPOS', 'GOMEZ')

nombres ; apellidos
##  [1] "RUBEN"     "CARLOS"    "PATY"      "ALEJANDRO" "LUISA"    
##  [6] "ROGELIO"   "ANDREA"    "FABIOLA"   "MARIA"     "FERNANDO"
##  [1] "GONZALEZ"  "MEDINA"    "ROBLES"    "JUAREZ"    "RUIZ"     
##  [6] "PIZARRO"   "RODRIGUEZ" "CARRETE"   "CAMPOS"    "GOMEZ"

Generando mil nombres y mil apellidos

milnombres <- sample(nombres, 1000, replace = TRUE)
milapellidos <- sample(apellidos, 1000, replace = TRUE)

Generando 10 nombres y apellidos completos

Nombre, Paterno y Materno

noms <- sample(milnombres, 10)
apesP <- sample(milapellidos, 10)
apesM <- sample(milapellidos, 10)

nombresCompletos <- data.frame(noms, apesP, apesM)

colnames(nombresCompletos) <- c("Nombre", "Apellido.P", "Apellido.M")
nombresCompletos
##      Nombre Apellido.P Apellido.M
## 1     MARIA     MEDINA     MEDINA
## 2     LUISA     CAMPOS      GOMEZ
## 3    ANDREA     ROBLES      GOMEZ
## 4     LUISA    CARRETE   GONZALEZ
## 5     RUBEN      GOMEZ     ROBLES
## 6     LUISA    CARRETE       RUIZ
## 7  FERNANDO  RODRIGUEZ     CAMPOS
## 8  FERNANDO   GONZALEZ      GOMEZ
## 9    ANDREA      GOMEZ     ROBLES
## 10    RUBEN       RUIZ     ROBLES

Creando una función

generaNombres <- function(losnombres, losapellidos, cuantos) {
  
  milnombres <- sample(nombres, 1000, replace = TRUE)
  milapellidos <- sample(apellidos, 1000, replace = TRUE)
  
  noms <- sample(milnombres, cuantos)
  apesP <- sample(milapellidos, cuantos)
  apesM <- sample(milapellidos, cuantos)
  
  nombresCompletos <- data.frame(noms, apesP, apesM)
  
  colnames(nombresCompletos) <- c("Nombre", "Apellido.P", "Apellido.M")
  nombresCompletos
}

Llamando la función creada

personas <- generaNombres(nombres, apellidos, 100)
personas
##        Nombre Apellido.P Apellido.M
## 1      CARLOS  RODRIGUEZ     CAMPOS
## 2        PATY   GONZALEZ   GONZALEZ
## 3       MARIA     JUAREZ   GONZALEZ
## 4       LUISA    CARRETE      GOMEZ
## 5     ROGELIO     ROBLES    CARRETE
## 6      ANDREA   GONZALEZ     MEDINA
## 7     ROGELIO     JUAREZ      GOMEZ
## 8      ANDREA      GOMEZ     ROBLES
## 9       RUBEN     ROBLES       RUIZ
## 10   FERNANDO  RODRIGUEZ   GONZALEZ
## 11  ALEJANDRO    PIZARRO    PIZARRO
## 12      LUISA     MEDINA     CAMPOS
## 13      LUISA  RODRIGUEZ       RUIZ
## 14    FABIOLA      GOMEZ      GOMEZ
## 15      MARIA      GOMEZ     MEDINA
## 16      MARIA     ROBLES    CARRETE
## 17     CARLOS     JUAREZ   GONZALEZ
## 18   FERNANDO     MEDINA     JUAREZ
## 19      MARIA       RUIZ      GOMEZ
## 20      MARIA   GONZALEZ      GOMEZ
## 21   FERNANDO     MEDINA     MEDINA
## 22  ALEJANDRO     ROBLES     ROBLES
## 23     ANDREA  RODRIGUEZ    PIZARRO
## 24      RUBEN     JUAREZ    PIZARRO
## 25  ALEJANDRO    PIZARRO       RUIZ
## 26      RUBEN  RODRIGUEZ    PIZARRO
## 27      RUBEN    CARRETE    PIZARRO
## 28  ALEJANDRO   GONZALEZ     JUAREZ
## 29      LUISA      GOMEZ     JUAREZ
## 30     ANDREA     CAMPOS   GONZALEZ
## 31   FERNANDO  RODRIGUEZ       RUIZ
## 32     ANDREA       RUIZ       RUIZ
## 33      RUBEN    CARRETE     JUAREZ
## 34      LUISA    PIZARRO       RUIZ
## 35    FABIOLA  RODRIGUEZ    CARRETE
## 36  ALEJANDRO    CARRETE  RODRIGUEZ
## 37      LUISA      GOMEZ      GOMEZ
## 38    FABIOLA    CARRETE  RODRIGUEZ
## 39   FERNANDO     JUAREZ     MEDINA
## 40       PATY     MEDINA  RODRIGUEZ
## 41  ALEJANDRO     JUAREZ       RUIZ
## 42   FERNANDO  RODRIGUEZ      GOMEZ
## 43      LUISA     JUAREZ    PIZARRO
## 44      RUBEN     ROBLES     JUAREZ
## 45      LUISA    CARRETE     CAMPOS
## 46      MARIA     JUAREZ    PIZARRO
## 47    FABIOLA      GOMEZ     JUAREZ
## 48    ROGELIO     CAMPOS     MEDINA
## 49      MARIA    CARRETE  RODRIGUEZ
## 50    ROGELIO     JUAREZ     MEDINA
## 51    ROGELIO  RODRIGUEZ     CAMPOS
## 52      RUBEN       RUIZ      GOMEZ
## 53  ALEJANDRO     ROBLES  RODRIGUEZ
## 54   FERNANDO     MEDINA    CARRETE
## 55       PATY       RUIZ  RODRIGUEZ
## 56      RUBEN     JUAREZ     ROBLES
## 57     ANDREA      GOMEZ   GONZALEZ
## 58      RUBEN     ROBLES  RODRIGUEZ
## 59      LUISA   GONZALEZ   GONZALEZ
## 60      MARIA     MEDINA       RUIZ
## 61  ALEJANDRO     ROBLES     CAMPOS
## 62    FABIOLA    CARRETE      GOMEZ
## 63      MARIA  RODRIGUEZ  RODRIGUEZ
## 64      MARIA       RUIZ  RODRIGUEZ
## 65      LUISA     CAMPOS  RODRIGUEZ
## 66  ALEJANDRO       RUIZ     MEDINA
## 67    ROGELIO  RODRIGUEZ       RUIZ
## 68     ANDREA  RODRIGUEZ     JUAREZ
## 69     ANDREA       RUIZ      GOMEZ
## 70       PATY  RODRIGUEZ     JUAREZ
## 71      RUBEN     ROBLES   GONZALEZ
## 72      LUISA     CAMPOS     ROBLES
## 73    FABIOLA     JUAREZ  RODRIGUEZ
## 74    FABIOLA  RODRIGUEZ     JUAREZ
## 75      MARIA     CAMPOS     JUAREZ
## 76     ANDREA   GONZALEZ   GONZALEZ
## 77    FABIOLA     MEDINA   GONZALEZ
## 78    ROGELIO    CARRETE     JUAREZ
## 79      RUBEN       RUIZ     MEDINA
## 80       PATY  RODRIGUEZ  RODRIGUEZ
## 81     ANDREA       RUIZ   GONZALEZ
## 82    ROGELIO      GOMEZ  RODRIGUEZ
## 83    FABIOLA     JUAREZ   GONZALEZ
## 84      LUISA     ROBLES     ROBLES
## 85    FABIOLA     CAMPOS     ROBLES
## 86    ROGELIO     ROBLES       RUIZ
## 87      LUISA       RUIZ  RODRIGUEZ
## 88      LUISA     CAMPOS     ROBLES
## 89      RUBEN  RODRIGUEZ      GOMEZ
## 90    FABIOLA       RUIZ  RODRIGUEZ
## 91  ALEJANDRO    CARRETE       RUIZ
## 92    FABIOLA   GONZALEZ     MEDINA
## 93      MARIA  RODRIGUEZ   GONZALEZ
## 94   FERNANDO     ROBLES    CARRETE
## 95   FERNANDO       RUIZ     ROBLES
## 96   FERNANDO  RODRIGUEZ    CARRETE
## 97     ANDREA       RUIZ   GONZALEZ
## 98    FABIOLA     JUAREZ    CARRETE
## 99     ANDREA       RUIZ    PIZARRO
## 100  FERNANDO  RODRIGUEZ      GOMEZ

A través de una función se generaron aleatoriamente 100 nombres con apellidos maternos y paternos (provenientes de dos vectores: un vector para nombres y otro para apellidos)