<div>Benilton,</div><div> </div><div>estou disponibilizando o código e o data que eu utilizo.</div><div> </div><div>Agradeço muito a sua ajuda.</div><div> </div><div><a href="http://www.datafilehost.com/download-91695640.html">http://www.datafilehost.com/download-91695640.html</a></div>
<div> </div><div><a href="http://www.datafilehost.com/download-8501f2b5.html">http://www.datafilehost.com/download-8501f2b5.html</a></div><div> </div><div>Carlos Mendonça.<br><br></div><div class="gmail_quote">Em 20 de setembro de 2011 21:10, Carlos Mendonça <span dir="ltr"><<a href="mailto:csaeslpv@centroin.com.br">csaeslpv@centroin.com.br</a>></span> escreveu:<br>
<blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote"><div>Olá Benilton,</div><div> </div><div>usei </div>
<div> </div><div>aux1 <- lapply(split(tmp, tmp$codigo), <div class="im"><br>                    function(y) <br>                        equantileByCounts(y$qtd, y$val, c(.25, .75))) <br>
</div></div><div>Porém, deu o erro abaixo.<br></div><div>"Erro em split.default(seq_len(nrow(x)), f, drop = drop, ...) : <br>  Comprimento do grupo é zero mas o comprimento dos dados é maior que zero"</div><div>
 </div>
<div>Será que tem que fazer mais alguma coisa?</div><div> </div><div>Obrigado pela ajuda,</div><div> </div><div>Carlos Mendonça.</div><div> </div><div><br> </div><div class="gmail_quote"><div class="im">Em 31 de agosto de 2011 09:30, Carlos Mendonça <span dir="ltr"><<a href="mailto:csaeslpv@centroin.com.br" target="_blank">csaeslpv@centroin.com.br</a>></span> escreveu:<br>

</div><blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote"><div>Caros, estou utilizando a função abaixo que calcula os quartis ponderados que funcionou muito bem até agora. </div>
<div><div></div><div class="h5">
<div> </div><div>tmp = subset(arq1, select=c(codigo, qtd, val))</div><div>equantileByCounts <- function(x, counts, qs){<br>
    tot <- sum(counts)<br>    i <- order(x)<br>    x <- x[i]<br>    counts <- counts[i]<br>    partial <- cumsum(counts)<br>    qsObs <- qs*tot<br>    start <- floor(qsObs)<br>    end <- ceiling(qsObs)<br>


    i <- length(qs)<br>    aux1 <- sapply(1:i,<br>                  function(.x, start, end, x){<br>                      coord <- c(start[.x], end[.x])<br>                      bins <- c(1, partial)<br>                      grps <- cut(coord, bins, labels=FALSE, include.lowest=T)<br>


                      mean(x[grps])<br>                  }, start=start, end=end, x=x)<br>    names(aux1) <- names(qs)<br>    return(aux1)<br>}</div><div>aux1 <- do.call(rbind,<br>               lapply(split(tmp, tmp$codigo),<br>


                      function(y)<br>                      equantileByCounts(y$qtd, y$val, c(.25, .75))))</div><div> </div><div> </div><div>O meu processamento é por trimestres e em apenas um deles deu a seguinte mensagem de erro:</div>


<div> </div><div> "Erro em cut.default(coord, bins, labels = FALSE, include.lowest = T) : <br>  'breaks' não são únicos"<br></div><div>Alguém saberia me dizer o que posso fazer?<br clear="all"><br></div>


<div>                Um abraço,</div>
<div> </div><font color="#888888">
<div>                Carlos Mendonça.</div><br>
</font></div></div></blockquote></div><font color="#888888"><br><br clear="all"><br>-- <br><div>                Um abraço,</div>
<div> </div>
<div>                Mendonça</div><br>
</font></blockquote></div><br><br clear="all"><br>-- <br><div>                Um abraço,</div>
<div> </div>
<div>                Mendonça</div><br>