R/f.args.from.info0.R

Defines functions f.args.from.info0

f.args.from.info0 <- function(info){
##
## EXTRACTS VALID haplin ARGUMENTS FROM AN info OBJECT
##
## NOTE: ASSUMES ALL PARAMETERS ARE ON LEVEL 2 IN info, EXCEPT filename
##
#
## EXTRACT STANDARD HAPLIN ARGUMENTS WITH DEFAULTS
.formals <- formals(haplin0)

.formals$data <- NULL
.formals$pedIndex <- NULL


#
## FLATTEN info OBJECT, ONE LEVEL
.tmp <- unlist(info, recursive = F)
#
## EXTRACT NAMES FROM ONE LEVEL DOWN
.names <- sapply(info, names)
.names <- c("filename", unlist(.names[-1]))
#
## CHECK NAME LENGTH
if(length(.names) != length(.tmp)) stop()
#
## USE NAMES FROM ONE LEVEL DOWN
names(.tmp) <- .names
#
## PICK ONLY THOSE THAT ARE ARGUMENTS TO HAPLIN
.tmp <- .tmp[names(.formals)]
#
## FOR SAFETY'S SAKE
.test <- f.check.pars0(.tmp, .formals)
#
##
return(.tmp)
}

Try the Haplin package in your browser

Any scripts or data that you put into this service are public.

Haplin documentation built on May 20, 2022, 5:07 p.m.