Function repnam replicates its argument to the desired length, either by simply replicating or - if it has names - by replicating the default and matching the argument by its names.

repnam(argument, names = NULL, len=length(names), default = list(NULL))

Arguments

argument

a named or non-named vector or list to be replicated

names

NULL or a charcter vector of names to which the argument names are matched

len

the desired length (required if names is not given)

default

the desired default which is replicated in case names are used (the default list(NULL) is suitable for a list argument)

Value

an object like argument or default having length len

Author

Jens Oehlschlägel

Note

This is for internal use, e.g. to handle argument colClasses in read.table.ffdf

See also

Examples

 message("a list example")
#> a list example
 repnam(list(y=c(1,2), z=3), letters)
#> $a
#> NULL
#> 
#> $b
#> NULL
#> 
#> $c
#> NULL
#> 
#> $d
#> NULL
#> 
#> $e
#> NULL
#> 
#> $f
#> NULL
#> 
#> $g
#> NULL
#> 
#> $h
#> NULL
#> 
#> $i
#> NULL
#> 
#> $j
#> NULL
#> 
#> $k
#> NULL
#> 
#> $l
#> NULL
#> 
#> $m
#> NULL
#> 
#> $n
#> NULL
#> 
#> $o
#> NULL
#> 
#> $p
#> NULL
#> 
#> $q
#> NULL
#> 
#> $r
#> NULL
#> 
#> $s
#> NULL
#> 
#> $t
#> NULL
#> 
#> $u
#> NULL
#> 
#> $v
#> NULL
#> 
#> $w
#> NULL
#> 
#> $x
#> NULL
#> 
#> $y
#> [1] 1 2
#> 
#> $z
#> [1] 3
#> 
 repnam(list(c(1,2), 3), letters)
#> [[1]]
#> [1] 1 2
#> 
#> [[2]]
#> [1] 3
#> 
#> [[3]]
#> [1] 1 2
#> 
#> [[4]]
#> [1] 3
#> 
#> [[5]]
#> [1] 1 2
#> 
#> [[6]]
#> [1] 3
#> 
#> [[7]]
#> [1] 1 2
#> 
#> [[8]]
#> [1] 3
#> 
#> [[9]]
#> [1] 1 2
#> 
#> [[10]]
#> [1] 3
#> 
#> [[11]]
#> [1] 1 2
#> 
#> [[12]]
#> [1] 3
#> 
#> [[13]]
#> [1] 1 2
#> 
#> [[14]]
#> [1] 3
#> 
#> [[15]]
#> [1] 1 2
#> 
#> [[16]]
#> [1] 3
#> 
#> [[17]]
#> [1] 1 2
#> 
#> [[18]]
#> [1] 3
#> 
#> [[19]]
#> [1] 1 2
#> 
#> [[20]]
#> [1] 3
#> 
#> [[21]]
#> [1] 1 2
#> 
#> [[22]]
#> [1] 3
#> 
#> [[23]]
#> [1] 1 2
#> 
#> [[24]]
#> [1] 3
#> 
#> [[25]]
#> [1] 1 2
#> 
#> [[26]]
#> [1] 3
#> 

 message("a vector example")
#> a vector example
 repnam(c(y=1, z=3), letters, default=NA)
#>  a  b  c  d  e  f  g  h  i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z 
#> NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA  1  3 
 repnam(c(1, 3), letters, default=NA)
#>  [1] 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3