[R-br] Criar =?utf-8?Q?numera=C3=A7=C3=A3o_=C3=BAnica_?=para dados iguais

Fernando Souza nandodesouza em gmail.com
Sáb Fev 8 03:25:09 -02 2020


Um solução viável

Animal<-LETTERS[1:10]
ANO<-c("2018","2019")
MES<-month.name[10:11]
FAZENDA<-rep(1:3,each=3)
dados<-expand.grid(Animal=Animal,Ano=ANO,Mes=MES,Fazenda=as.factor(FAZENDA))
head(dados)
#install.packages("dplyr")
library(dplyr)
options(dplyr.print_max = 400) #permite ver a tabela completa

novodados<-dados%>%group_by(Ano,Mes,Fazenda)%>%mutate(grupo=interaction(Ano,Mes,Fazenda))

novodados%>%mutate(grupo=recode_factor(grupo,"2018.October.1"='1',
"2019.October.1"='2',"2018.November.1"='3',
"2019.November.1"='4',"2018.October.2"='5',
"2019.October.2"='6',"2018.November.2"='7',
"2019.November.2"='8',"2018.October.3"='9',
"2019.October.3"='10',"2018.November.3"='11',
"2019.November.3"='12'))

On Feb 3 2020, at 6:29 pm, Cesar Rabak por (R-br) <r-br em listas.c3sl.ufpr.br> wrote:
> Admitindo que você gerou a classificação na variável grupo por meios adequados, ou seja você já disponha dessa coluna, minha sugestão é que você crie a variável GC pela conversão em inteiro do grupo :
>
> Código não testado:
>
> seu_dataframe$GC <- as.integer(seu_dataframe$grupo)
>
> Dependendo como a foi feita a geração da variável grupo talvez para isso funcionar você tenha que primeiro converter para factor:
>
> seu_dataframe$GC <- as.integer(as.factor(seu_dataframe$grupo))
>
> HTH
>
> --
> Cesar Rabak
>
>
>
>
> On Mon, Feb 3, 2020 at 9:32 AM Bárbara Mazetti Nascimento por (R-br) <r-br em listas.c3sl.ufpr.br (mailto:r-br em listas.c3sl.ufpr.br)> wrote:
> > Boa tarde pessoal!
> >
> > Sou nova no R e estou me batendo um pouco com algumas edições de banco de dados que era acostumada a fazer no SAS.
> >
> > Preciso criar uma coluna com uma nova identificação para uma variável que eu criei agrupando outras variáveis. Eu trabalho com dados de bovinos e criei o que chamamos de grupo de contemporâneos: animais que vivenciaram o mesmo ambiente. Então geralmente são animais nascidos no mesmo ano, no mesmo mês e na mesma propriedade. Então, por exemplo, temos os seguintes animais:
> >
> > Animal Ano de nascimento Mês de nascimento Fazenda
> > A 2018 Oct 1
> > B 2018 Oct 1
> > C 2018 Oct 1
> > D 2018 Oct 2
> > E 2018 Oct 2
> > F 2018 Oct 2
> > G 2018 Nov 1
> > H 2018 Nov 1
> > I 2018 Nov 1
> > J 2018 Nov 1
> >
> >
> > Eu agrupei essas variáveis em uma que eu chamei de Grupo:
> >
> > Animal Grupo
> > A 2018 Oct 1
> > B 2018 Oct 1
> > C 2018 Oct 1
> > D 2018 Oct 2
> > E 2018 Oct 2
> > F 2018 Oct 2
> > G 2018 Nov 1
> > H 2018 Nov 1
> > I 2018 Nov 1
> > J 2018 Nov 1
> >
> >
> > Agora preciso criar essa nova numeração, para que os animais que tenham o mesmo Grupo sejam chamados pelo mesmo número (GC). A saída que eu espero é a seguinte:
> >
> > Animal Grupo GC
> > A 2018 Oct 1 1
> > B 2018 Oct 1 1
> > C 2018 Oct 1 1
> > D 2018 Oct 2 2
> > E 2018 Oct 2 2
> > F 2018 Oct 2 2
> > G 2018 Nov 1 3
> > H 2018 Nov 1 3
> > I 2018 Nov 1 3
> > J 2018 Nov 1 3
> >
> >
> > Será que vocês poderiam me ajudar em como eu consigo criar essa nova numeração?
> >
> > Muito obrigada!!
> > Bárbara
> >
> > --
> > _____________________________________________________
> > MSc. Bárbara Mazetti Nascimento
> > PhD student in Animal Science
> >
> > Genetic Applied to Animal Breeding Group - GAMA
> > UFPR - Curitiba - PR - Brazil
> >
> > +55 41 99142-9495
> >
> > _______________________________________________
> > R-br mailing list
> > R-br em listas.c3sl.ufpr.br (mailto:R-br em listas.c3sl.ufpr.br)
> > 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
> R-br em listas.c3sl.ufpr.br
> 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.
>

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20200208/241c2b99/attachment.html>


Mais detalhes sobre a lista de discussão R-br