##
## 1. Names to match exercising many possibile combinations
## of surname with 0, 1, >1 matches possibly after
## replacing with subNonStandardNames
## combined with possibly multiple givenName combinations
## with 0, 1, >1 matches possibly requiring replacing with
## subNonStandardNames or nicknames
##
# NOTE: "-" could also be "e" with an accent;
# not included with this documentation, because
# non-English characters generate warnings in standard tests.
Names2mtch <- c("Andr_ Bruce C_rdenas", "Dolores Ella Feinstein",
"George Homer", "Inez Jane Kappa", "Luke Michael Noel",
"Oscar Papa", "Quincy Ra_l Stevens",
"Thomas U. Vel_zquez", "William X. Young",
"Zebra")
##
## 2. Data = matrix(..., byrow=TRUE) to exercise the combinations
## the combinations from 1
##
Data1 <- matrix(c("C_rdenas", "Andre B.", "123",
"C_rdenas", "Don", "456",
"Feld", "Don", "789", "Young", "Bill", "369"),
4, byrow=TRUE)
##
## 3. matchName1
##
parceNm1 <- parseName(Names2mtch)
match1.1 <- matchName1(parceNm1[, 'surname'], Data1)
# check
match1.1s <- vector(10, mode='list')
match1.1s[[1]] <- 1:2
match1.1s[[9]] <- 4
names(match1.1s) <- parceNm1[, 'surname']
stopifnot(
all.equal(match1.1, match1.1s)
)
##
## 4. matchName
##
nickNames <- matrix(c("William", "Bill"), 1, byrow=TRUE)
match1 <- matchName(Names2mtch, Data1, nicknames=nickNames)
# check
match1a <- list("Cardenas, Andre Bruce"=Data1[1, ],
"Feinstein, Dolores Ella"=NULL,
"Homer, George"=NULL, "Kappa, Inez Jane"=NULL,
"Noel, Luke Michael"=NULL, "Papa, Oscar"=NULL,
"Stevens, Quincy Raul"=NULL,
"Velazquez, Thomas U."=NULL,
"Young, William X."=Data1[4,], ", Zebra"=NULL)
stopifnot(
all.equal(match1, match1a)
)Run the code above in your browser using DataLab