Caros,

tudo bem? Estou com um código que gostaria de otimizar. Notem que faço um for para fazer tabulações simples.

Como posso otimizar este código? Tenho que realizar 3k~4k tabelas...

temp <- list()
for(i in 1:20){
    temp[[i]] <- data.frame(matrix(ncol=3,nrow=100))
    colnames(temp[[i]]) <- c('ID','Tipo','Valor')
    temp[[i]]$ID    <- paste(i,sprintf("%03d",1:100),sep='')
    temp[[i]]$Tipo  <- factor(sample(0:10,100,replace=T),levels=c(0:10))
    temp[[i]]$Valor <- rnorm(100,100,20)
}
dado <- data.frame(matrix(ncol=13,nrow=20))
colnames(dado) <- c('ID',paste('Tipo',sprintf('%02d',0:10),sep=''),'TipoNA')
for(i in 1:20){
dado[i,] <- c(i,table(temp[[i]]$Tipo,exclude=NULL))
}

Pensei algo com do.call ou sapply, mas não sei como definir apenas uma coluna...

Abraços,
Leandro