Humberto, bom dia! Nesse caso você precisaria fornecer teus dados ou uma amostra deles. Selecione uma amostra dos teus dados e verifique se o problema se repete com eles. Se a amostra for pequena, pode colar a saída do comando dput(seudataframe) diretamente no corpo do email.
================================================ Éder Comunello Agronomist (UEM), MSc in Environ. Sciences (UEM) DSc in Agricultural Systems Engineering (USP/Esalq) Brazilian Agricultural Research Corporation (Embrapa) Dourados, MS, Brazil |<O>| ================================================ GEO, -22.2752, -54.8182, 408m UTC-04:00 / DST: UTC-03:00 Em 18 de maio de 2016 15:09, Humberto Hazin <[email protected]> escreveu: > Ola Eder, > > > > Obrigado pela dica realmente tinha 132 linhas repetidas. Entretanto, > apareceu outro problema. Ele so esta fazendo para o primeiro barco apenas e > não para os demais. Tens alguma ideia do que seja? No teu script com os > dados que vc criou roda perfeitamente. > > > > Humberto > > > > *De:* [email protected] [mailto:[email protected]] *Em nome de *Éder > Comunello > *Enviada em:* quinta-feira, 12 de maio de 2016 17:12 > > *Para:* Humberto Hazin <[email protected]> > *Cc:* [email protected] > *Assunto:* Re: [R-br] Criar uma coluna de lancamentos de pesca > > > > Humberto, > > > > É provável que seja uma linha (ou mais) em duplicidade para os 4 campos: > boat, ano, mes e dia. > > ?duplicated > > > > > ================================================ > Éder Comunello > > Agronomist (UEM), MSc in Environ. Sciences (UEM) > > DSc in Agricultural Systems Engineering (USP/Esalq) > > Brazilian Agricultural Research Corporation (Embrapa) > > Dourados, MS, Brazil |<O>| > > ================================================ > > GEO, -22.2752, -54.8182, 408m > > UTC-04:00 / DST: UTC-03:00 > > > > > > > > > > Em 12 de maio de 2016 10:09, Humberto Hazin <[email protected]> escreveu: > > Bom dia Eder, > > > > Muito obrigado pela ajuda acredito que funcionara agora. Rodei teu exemplo > e deu certo, porém quando rodei nos meus dados acusou um erro. Eu vou > verificar o que esse erro. De toda forma, muito obrigado! > > > > Error in `[<-.data.frame`(`*tmp*`, sel[ord], "lance", value = c(1L, 0L : > replacement has 2 rows, data has 75201 > > > > > > Humberto > > > > > > *De:* [email protected] [mailto:[email protected]] *Em nome de *Éder > Comunello > *Enviada em:* quinta-feira, 12 de maio de 2016 08:23 > > > *Para:* Humberto Hazin <[email protected]> > *Cc:* [email protected] > *Assunto:* Re: [R-br] Criar uma coluna de lancamentos de pesca > > > > Humberto, bom dia! > > > > Era para o script fazer isso mesmo, porque até então não havia presumido > que precisaria reiniciar a contagem com a mudança do ano. Fiz outra > alteração no script para atender esse critério. > > > > Via de regra, deve-se evitar aninhar instruções "for", mas acho que pode > te servir como ponto de partida. Outros colegas da lista poderão te propor > soluções mais elegantes... > > > > ### <code r> > > df <- read.table(text= > > "dia mes ano boat > > 13 1 2005 AGIOS.NIKOLAUS > > 10 1 2005 AGIOS.NIKOLAUS > > 11 1 2005 AGIOS.NIKOLAUS > > 12 1 2005 AGIOS.NIKOLAUS > > 9 1 2005 AGIOS.NIKOLAUS > > 10 1 2005 X > > 9 1 2005 X > > 12 1 2005 X > > 13 1 2005 Y > > 11 1 2005 Y > > 13 1 2006 Y > > 11 1 2006 Y", head=T, as.is=T) > > > > df$lance <- NA > > df > > > > for (boat in unique(df$boat)) { > > for (ano in unique(df$ano)) { > > sel <- which(df$boat==boat & df$ano==ano) > > ord <- with(df[sel,], order(dia, mes, ano)) > > df[sel[ord], "lance"] <- 1:length(sel) > > } > > } > > > > df > > # dia mes ano boat lance > > # 1 13 1 2005 AGIOS.NIKOLAUS 5 > > # 2 10 1 2005 AGIOS.NIKOLAUS 2 > > # 3 11 1 2005 AGIOS.NIKOLAUS 3 > > # 4 12 1 2005 AGIOS.NIKOLAUS 4 > > # 5 9 1 2005 AGIOS.NIKOLAUS 1 > > # 6 10 1 2005 X 2 > > # 7 9 1 2005 X 1 > > # 8 12 1 2005 X 3 > > # 9 13 1 2005 Y 2 > > # 10 11 1 2005 Y 1 > > # 11 13 1 2006 Y 2 > > # 12 11 1 2006 Y 1 > > ### </code> > > > > > ================================================ > Éder Comunello > > Agronomist (UEM), MSc in Environ. Sciences (UEM) > > DSc in Agricultural Systems Engineering (USP/Esalq) > > Brazilian Agricultural Research Corporation (Embrapa) > > Dourados, MS, Brazil |<O>| > > ================================================ > > GEO, -22.2752, -54.8182, 408m > > UTC-04:00 / DST: UTC-03:00 > > > > > > > > > > Em 11 de maio de 2016 19:17, Humberto Hazin <[email protected]> escreveu: > > Ola eder, > > > > Mais uma vez obrigado e desculpa te incomodar de novo o problema é que > esta um pouco estranho e diferente do teu resultado. Segue abaixo a partir > do ponto amarelo deveria repetir 1 2 3...e não 16 17.... > > > > set.day setyear setmonth boat lance > > 20404 14 1999 12 ACECHADOR 1 > > 20422 15 1999 12 ACECHADOR 2 > > 20403 17 1999 12 ACECHADOR 3 > > 20467 18 1999 12 ACECHADOR 4 > > 20466 19 1999 12 ACECHADOR 5 > > 20465 20 1999 12 ACECHADOR 6 > > 20473 21 1999 12 ACECHADOR 7 > > 20469 22 1999 12 ACECHADOR 8 > > 20468 23 1999 12 ACECHADOR 9 > > 20475 25 1999 12 ACECHADOR 10 > > 20470 26 1999 12 ACECHADOR 11 > > 20471 27 1999 12 ACECHADOR 12 > > 20472 28 1999 12 ACECHADOR 13 > > 20474 29 1999 12 ACECHADOR 14 > > 20476 30 1999 12 ACECHADOR 15 > > 26605 7 2000 1 ACECHADOR 16 > > 26592 8 2000 1 ACECHADOR 17 > > 26601 9 2000 1 ACECHADOR 18 > > 26603 10 2000 1 ACECHADOR 19 > > 26589 11 2000 1 ACECHADOR 20 > > 25991 12 2000 1 ACECHADOR 21 > > > > > > *De:* [email protected] [mailto:[email protected]] *Em nome de *Éder > Comunello > *Enviada em:* quarta-feira, 11 de maio de 2016 18:48 > *Para:* Humberto Hazin <[email protected]> > *Cc:* [email protected] > > > *Assunto:* Re: [R-br] Criar uma coluna de lancamentos de pesca > > > > Humberto, > > > > Você poderia ordenar o banco antes de rodar: df <- df[with(df, > order(boat, ano, mes, dia)),] > > > > Ou modificar o código. Uma possibilidade: > > > > > > ### <code r> > > df <- read.table(text= > > "dia mes ano boat > > 13 1 2005 AGIOS.NIKOLAUS > > 10 1 2005 AGIOS.NIKOLAUS > > 11 1 2005 AGIOS.NIKOLAUS > > 12 1 2005 AGIOS.NIKOLAUS > > 9 1 2005 AGIOS.NIKOLAUS > > 10 1 2005 X > > 9 1 2005 X > > 12 1 2005 X > > 13 1 2005 Y > > 11 1 2005 Y", head=T, as.is=T) > > > > df$lance <- NA > > df > > > > for (boat in unique(df$boat)) { > > sel <- which(df$boat==boat) > > ord <- with(df[sel,], order(dia, mes, ano)) > > df[sel[ord], "lance"] <- 1:length(sel) > > } > > > > df > > # dia mes ano boat lance > > # 1 13 1 2005 AGIOS.NIKOLAUS 5 > > # 2 10 1 2005 AGIOS.NIKOLAUS 2 > > # 3 11 1 2005 AGIOS.NIKOLAUS 3 > > # 4 12 1 2005 AGIOS.NIKOLAUS 4 > > # 5 9 1 2005 AGIOS.NIKOLAUS 1 > > # 6 10 1 2005 X 2 > > # 7 9 1 2005 X 1 > > # 8 12 1 2005 X 3 > > # 9 13 1 2005 Y 2 > > # 10 11 1 2005 Y 1 > > ### </code> > > > > > > > > > > > ================================================ > Éder Comunello > > Agronomist (UEM), MSc in Environ. Sciences (UEM) > > DSc in Agricultural Systems Engineering (USP/Esalq) > > Brazilian Agricultural Research Corporation (Embrapa) > > Dourados, MS, Brazil |<O>| > > ================================================ > > GEO, -22.2752, -54.8182, 408m > > UTC-04:00 / DST: UTC-03:00 > > > > > > > > > > Em 11 de maio de 2016 14:39, Humberto Hazin <[email protected]> escreveu: > > Muito obrigado Rodrigo e Elder, > > parcialmente o problema foi resolvido, entretanto olhando o resultado > abaixo do código do Elder no meu banco de dados teria que estar > classificado dia mês ano barco para que a sequência de lances darem certos > correto? Ou pode ser incluída no código? Olhando o exemplo que esta em > amarelo por exemplo o lance 3 deveria ser o lance 2. > > > > set.day setyear setmonth boat lance > > 1 2 1978 8 SUMIYOSHI.MARU.32 1 > > 2 4 1978 8 SEIKO.MARU.8 1 > > 3 16 1978 4 SUMIYOSHI.MARU.32 2 > > 4 13 1978 4 SUMIYOSHI.MARU.32 3 > > 5 23 1978 9 SEIKO.MARU.8 2 > > 6 7 1978 10 SUMIYOSHI.MARU.32 4 > > 7 27 1978 1 SUMIYOSHI.MARU.32 5 > > 8 10 1978 1 SUMIYOSHI.MARU.8 1 > > > > > > > > > > *De:* R-br [mailto:[email protected]] *Em nome de *Éder > Comunello > *Enviada em:* quarta-feira, 11 de maio de 2016 11:23 > *Para:* [email protected] > *Assunto:* Re: [R-br] Criar uma coluna de lancamentos de pesca > > > > Humberto, bom dia! > > > > Segue uma uma sugestão, sem considerar que possa haver duplicidade... > > > > ### <code r> > > df <- read.table(text= > > "dia mes ano boat > > 9 1 2005 AGIOS.NIKOLAUS > > 10 1 2005 AGIOS.NIKOLAUS > > 11 1 2005 AGIOS.NIKOLAUS > > 12 1 2005 AGIOS.NIKOLAUS > > 13 1 2005 AGIOS.NIKOLAUS > > 9 1 2005 X > > 10 1 2005 X > > 11 1 2005 X > > 12 1 2005 Y > > 13 1 2005 Y", head=T, as.is=T) > > > > df$lance <- NA > > df > > > > for (boat in unique(df$boat)) { > > sel <- which(df$boat==boat) > > df[sel, "lance"] <- 1:length(sel) > > } > > > > df > > # dia mes ano boat lance > > # 1 9 1 2005 AGIOS.NIKOLAUS 1 > > # 2 10 1 2005 AGIOS.NIKOLAUS 2 > > # 3 11 1 2005 AGIOS.NIKOLAUS 3 > > # 4 12 1 2005 AGIOS.NIKOLAUS 4 > > # 5 13 1 2005 AGIOS.NIKOLAUS 5 > > # 6 9 1 2005 X 1 > > # 7 10 1 2005 X 2 > > # 8 11 1 2005 X 3 > > # 9 12 1 2005 Y 1 > > # 10 13 1 2005 Y 2 > > ### </code> > > > > > ================================================ > Éder Comunello > > Agronomist (UEM), MSc in Environ. Sciences (UEM) > > DSc in Agricultural Systems Engineering (USP/Esalq) > > Brazilian Agricultural Research Corporation (Embrapa) > > Dourados, MS, Brazil |<O>| > > ================================================ > > GEO, -22.2752, -54.8182, 408m > > UTC-04:00 / DST: UTC-03:00 > > > > > > > > > > Em 11 de maio de 2016 09:37, Humberto Hazin <[email protected]> escreveu: > > Olá pessoal, > > > > Estou precisando criar uma coluna chamada lances. Onde cada lance > corresponde a um dia, mês, ano e barco conforme o exemplo abaixo: > > > > dia > > mes > > ano > > boat > > 9 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 10 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 11 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 12 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 13 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > > > > > Eu gostaria que a tabela ficasse dessa forma aqui > > > > dia > > mes > > ano > > boat > > Lance > > 9 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 1 > > 10 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 2 > > 11 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 3 > > 12 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 4 > > 13 > > 1 > > 2005 > > AGIOS.NIKOLAUS > > 5 > > > > > > Agradeço desde já > > > > Humberto > > > > > > > > > > > _______________________________________________ > R-br mailing list > [email protected] > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. > > > > > > > > >
_______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.
