[R-br] Erro em função
Carlos Mendonça
csaeslpv em centroin.com.br
Quinta Setembro 22 10:50:39 BRT 2011
Benilton,
eu postei um novo código corrigindo o problema do #VALOR e gerando univ sem
a informação do ano e mes.
http://www.datafilehost.com/download-b19057ee.html
Eu preciso calcular, por codigo, o quartil da variável pond ponderado pelo
val.
Obrigado,
Carlos Mendonça.
Em 31 de agosto de 2011 09:30, Carlos Mendonça
<csaeslpv em centroin.com.br>escreveu:
> Caros, estou utilizando a função abaixo que calcula os quartis ponderados
> que funcionou muito bem até agora.
>
> tmp = subset(arq1, select=c(codigo, qtd, val))
> equantileByCounts <- function(x, counts, qs){
> tot <- sum(counts)
> i <- order(x)
> x <- x[i]
> counts <- counts[i]
> partial <- cumsum(counts)
> qsObs <- qs*tot
> start <- floor(qsObs)
> end <- ceiling(qsObs)
> i <- length(qs)
> aux1 <- sapply(1:i,
> function(.x, start, end, x){
> coord <- c(start[.x], end[.x])
> bins <- c(1, partial)
> grps <- cut(coord, bins, labels=FALSE,
> include.lowest=T)
> mean(x[grps])
> }, start=start, end=end, x=x)
> names(aux1) <- names(qs)
> return(aux1)
> }
> aux1 <- do.call(rbind,
> lapply(split(tmp, tmp$codigo),
> function(y)
> equantileByCounts(y$qtd, y$val, c(.25, .75))))
>
>
> O meu processamento é por trimestres e em apenas um deles deu a
> seguinte mensagem de erro:
>
> "Erro em cut.default(coord, bins, labels = FALSE, include.lowest = T) :
> 'breaks' não são únicos"
> Alguém saberia me dizer o que posso fazer?
>
> Um abraço,
>
> Carlos Mendonça.
>
>
--
Um abraço,
Mendonça
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20110922/41294e87/attachment.html>
Mais detalhes sobre a lista de discussão R-br