1
我的模型的列表,並希望返回其係數的陣列(不是列表)。 (對於好奇,我從一堆不同的神經元的運行數據的單一模式,我想一個數組,它是係數X的神經元。)如果所有車型成功運行以下工作正常:使用sapply(,,簡化= TRUE)
Coefs = sapply(ModelList, coef)
但是如果其中一個模型失敗了,那麼coef()返回'NULL',這是與其他返回值不同的長度,我最終得到一個列表而不是一個數組。 :(
我的解決辦法是作品,是通用的,而且是可怕的笨拙:
Coefs = sapply(ModelList, coef)
typical = Coefs[[1]] # (ought to ensure that this is not NULL!)
typical[1:length(typical)] = NA # Replace all coefficients with NA
Bad = sapply(ModelList, is.null) # Find the bad entries
for (i in which(Bad)) # For each 'NULL', (UGH! A LOOP!)
Coefs[[i]] = typical # replace with a proper entry (of NAs)
Coefs = simplify2array(Coefs) # Now I can convert it to an array
有沒有更好的解決辦法
感謝
拉里