[R-br] Ajuda com a criação de um looping

Simone D. Sartorio sisartorio em yahoo.com.br
Segunda Janeiro 19 16:55:38 BRST 2015


Nossa, valeu mesmo Rubem!
Deu certo! Só precisa fazer um ajuste em relação a ordem cronológica do "dia_ciclo", pois gostaria que ficasse seguida toda a informação da mesma vaca, para só depois passar para a seguinte....será que tem algum argumento que daria para colocar na função que faça isso? você sabe?
obrigada! ;)Si
 

     Em Segunda-feira, 19 de Janeiro de 2015 16:31, Rubem Kaipper Ceratti <rubem_ceratti em yahoo.com.br> escreveu:
   

 Falha minha:
aggregate(producao ~ n_vaca + dia_ciclo, a21, mean)


*Acho* que está tudo certo agora...
      De: Simone D. Sartorio <sisartorio em yahoo.com.br>
 Para: Rubem Kaipper Ceratti <rubem_ceratti em yahoo.com.br>; "r-br em listas.c3sl.ufpr.br" <r-br em listas.c3sl.ufpr.br> 
 Enviadas: Segunda-feira, 19 de Janeiro de 2015 16:29
 Assunto: Re: [R-br] Ajuda com a criação de um looping
   
Rubem, mas eu preciso das médias por vaca e por dia do ciclo e não a média geral!
Como poderia usar essa função?! Pelo que entendi ela tem a mesma função do tapply()
obrigadaSi 

     Em Segunda-feira, 19 de Janeiro de 2015 16:22, Rubem Kaipper Ceratti <rubem_ceratti em yahoo.com.br> escreveu:
   

 Nesse caso, talvez seja melhor usa a função 'aggregate':
aggregate(producao ~ dia_ciclo, a21, mean)


Att.,Rubem
      De: Simone D. Sartorio <sisartorio em yahoo.com.br>
 Para: "r-br em listas.c3sl.ufpr.br" <r-br em listas.c3sl.ufpr.br> 
 Enviadas: Segunda-feira, 19 de Janeiro de 2015 16:12
 Assunto: [R-br] Ajuda com a criação de um looping
   
Pessoal, preciso de uma ajuda...
Meus dados são esses "a21", nele tenho a observação de 219 vacas (n_vaca), que estão numeradas de maneira aleatória. As vacas foram separadas em 3 grupos, onde em cada grupo aplicaram um tratamento diferente. Esse tratamento foi aplicado em forma de injeções (17 injeções) e entre uma injeção e outra, temos 14 dias de intervalo. A variável de interesse é "producao"> head(a21)   n_vaca n_lactacao trat pri_multiparas n_injecao dia_ciclo dia_exp producao      saude8    1731          3    1              2         0         1     -13     45.1    healthy9    1731          3    1              2         0         2     -12     47.8    healthy10   1731          3    1              2         0         3     -11     45.5    healthy11   1731          3    1              2         0         4     -10     45.2    healthy12   1731          3    1              2         0         5      -9     47.4 enrollment13   1731          3    1              2         0         6      -8     48.3 enrollment
# Aqui estou criando um subconjunto, onde tenho todas as informações da vaca 1731:> (vaca1731<- subset(a21, a21$n_vaca==1731)); dim(vaca1731)    n_vaca n_lactacao trat pri_multiparas n_injecao dia_ciclo dia_exp producao      saude8     1731          3    1              2         0         1     -13     45.1    healthy9     1731          3    1              2         0         2     -12     47.8    healthy10    1731          3    1              2         0         3     -11     45.5    healthy11    1731          3    1              2         0         4     -10     45.2    healthy12    1731          3    1              2         0         5      -9     47.4 enrollment13    1731          3    1              2         0         6      -8     48.3 enrollment14    1731          3    1              2         0         7      -7     46.4 enrollment15    1731          3    1              2         0         8      -6     47.9 enrollment16    1731          3    1              2         0         9      -5     50.3 enrollment17    1731          3    1              2         0        10      -4     50.8 enrollment18    1731          3    1              2         0        11      -3     47.9 enrollment19    1731          3    1              2         0        12      -2     46.2       heat20    1731          3    1              2         0        13      -1     50.8    healthy21    1731          3    1              2         0        14       0     45.8    healthy22    1731          3    1              2         1         1       1     50.5    healthy23    1731          3    1              2         1         2       2     49.0    healthy24    1731          3    1              2         1         3       3     48.8    healthy25    1731          3    1              2         1         4       4     53.9    healthy26    1731          3    1              2         1         5       5     45.4    healthy27    1731          3    1              2         1         6       6     38.6    healthy28    1731          3    1              2         1         7       7     41.3    healthy29    1731          3    1              2         1         8       8     50.2    healthy30    1731          3    1              2         1         9       9     50.2    healthy31    1731          3    1              2         1        10      10     50.4    healthy32    1731          3    1              2         1        11      11     49.9    healthy33    1731          3    1              2         1        12      12     50.1    healthy34    1731          3    1              2         1        13      13     52.0    healthy35    1731          3    1              2         1        14      14     47.8    healthy36    1731          3    1              2         2         1      15     50.0    healthy37    1731          3    1              2         2         2      16     49.7    healthy38    1731          3    1              2         2         3      17     50.4    healthy39    1731          3    1              2         2         4      18     48.9    healthy40    1731          3    1              2         2         5      19     49.5    healthy41    1731          3    1              2         2         6      20     48.8    healthy42    1731          3    1              2         2         7      21     56.3    healthy43    1731          3    1              2         2         8      22     52.1    healthy44    1731          3    1              2         2         9      23     51.6    healthy45    1731          3    1              2         2        10      24     50.5    healthy46    1731          3    1              2         2        11      25     46.0    healthy47    1731          3    1              2         2        12      26     53.7    healthy48    1731          3    1              2         2        13      27     51.7    healthy49    1731          3    1              2         2        14      28     49.1    healthy50    1731          3    1              2         3         1      29     51.9    healthy51    1731          3    1              2         3         2      30     51.4    healthy...256   1731          3    1              2        17        11     235     21.2    lamness257   1731          3    1              2        17        12     236     19.4    lamness258   1731          3    1              2        17        13     237     23.5    lamness259   1731          3    1              2        17        14     238     19.9    lamness[1] 251   9

# Para simplificar, considere que temos apenas 10 vacas:#--------------------------------------------> vacas <- c(1731, 2090, 2652, 2945, 2946, 3246, 3413, 3593, 3878, 3882)  # é a numeração das vacas
# O que eu quero fazer com esses dados é o seguinte:v1<- subset(a21, a21$n_vaca==vacas[1]); dim(v1)
v2<- subset(a21, a21$n_vaca==vacas[2]); dim(v2)v3<- subset(a21, a21$n_vaca==vacas[3]); dim(v3)v4<- subset(a21, a21$n_vaca==vacas[4]); dim(v4)v5<- subset(a21, a21$n_vaca==vacas[5]); dim(v5)v6<- subset(a21, a21$n_vaca==vacas[6]); dim(v6)v7<- subset(a21, a21$n_vaca==vacas[7]); dim(v7)v8<- subset(a21, a21$n_vaca==vacas[8]); dim(v8)v9<- subset(a21, a21$n_vaca==vacas[9]); dim(v9)v10<- subset(a21, a21$n_vaca==vacas[10]); dim(v10)
b<- c(tapply(v1$producao, v1$dia_ciclo, mean),tapply(v2$producao, v2$dia_ciclo, mean),tapply(v3$producao, v3$dia_ciclo, mean),tapply(v4$producao, v4$dia_ciclo, mean),tapply(v5$producao, v5$dia_ciclo, mean),tapply(v6$producao, v6$dia_ciclo, mean),tapply(v7$producao, v7$dia_ciclo, mean),tapply(v8$producao, v8$dia_ciclo, mean),tapply(v9$producao, v9$dia_ciclo, mean),tapply(v10$producao, v10$dia_ciclo, mean))#--------------------------------------------
Ainda estou engatinhando em questão de programação no R, como poderia fazer um looping com essas linhas de comando, pois preciso fazer isso para as 219 vacas!
desde já, muito obrigada!Simone ***---***---***---***---***---***---***---***---***---***---***---***---****  Simone Daniela Sartorio*   Professora Adjunta I no CCA/UFSCar, Araras/SP.* Doutora e Mestre em Estatística e Experimentação Agronômica - ESALQ/USP.*   Licenciada em Matemática - UNESP/Rio Claro.***---***---***---***---***---***---***---***---***---***---***---***---***
                                                                                      Tenha um bom dia! ;)
_______________________________________________
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/20150119/6f155952/attachment.html>


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