@@ -32,10 +32,13 @@ AIC.default <- function(object, ..., k = 2)
3232    ll  <-  if (isNamespaceLoaded(" stats4" stats4 :: logLik  else  logLik 
3333    if (! missing(... )) {#  several objects: produce data.frame
3434	lls  <-  lapply(list (object , ... ), ll )
35-         vals  <-  sapply(lls , function (el ) {
36-             c(as.numeric(el ), attr(el , " df" 
37-               attr(el , " nobs" || % NA_integer_ )
38-         })
35+         vals  <-  vapply(lls ,
36+                        function (el ) {
37+                            c(as.numeric(el ),
38+                              attr(el , " df" 
39+                              attr(el , " nobs" || % NA_integer_ )
40+                        },
41+                        numeric (3L ))
3942        val  <-  data.frame (df  =  vals [2L ,], ll  =  vals [1L ,])
4043        nos  <-  na.omit(vals [3L ,])
4144        if  (length(nos ) &&  any(nos  !=  nos [1L ]))
@@ -63,10 +66,13 @@ BIC.default <- function(object, ...)
6366    Nobs  <-  if (isNamespaceLoaded(" stats4" stats4 :: nobs    else  nobs 
6467    if (! missing(... )) {#  several objects: produce data.frame
6568        lls  <-  lapply(list (object , ... ), ll )
66-         vals  <-  sapply(lls , function (el ) {
67-             c(as.numeric(el ), attr(el , " df" 
68-               attr(el , " nobs" || % NA_integer_ )
69-         })
69+         vals  <-  vapply(lls ,
70+                        function (el ) {
71+                            c(as.numeric(el ),
72+                              attr(el , " df" 
73+                              attr(el , " nobs" || % NA_integer_ )
74+                        },
75+                        numeric (3L ))
7076        val  <-  data.frame (df  =  vals [2L ,], ll  =  vals [1L ,], nobs  =  vals [3L ,])
7177        nos  <-  na.omit(val $ nobs )
7278        if  (length(nos ) &&  any(nos  !=  nos [1L ]))
@@ -75,8 +81,10 @@ BIC.default <- function(object, ...)
7581        unknown  <-  is.na(val $ nobs )
7682        if (any(unknown ))
7783            val $ nobs [unknown ] <- 
78- 		sapply(list (object , ... )[unknown ],
79- 		       function (x ) tryCatch(Nobs(x ), error  =  function (e ) NA_real_ ))
84+ 		vapply(list (object , ... )[unknown ],
85+ 		       function (x )
86+                            tryCatch(Nobs(x ), error  =  function (e ) NA_real_ ),
87+                        0 )
8088        val  <-  data.frame (df  =  val $ df , BIC  =  - 2 * val $ ll  +  log(val $ nobs )* val $ df )
8189        row.names(val ) <-  as.character(match.call()[- 1L ])
8290        val 
0 commit comments