Traduções desta página:

Ferramentas do usuário

Ferramentas do site


05_curso_antigo:r2018:alunos:trabalho_final:hlucascs:fun2

PLANO B

Planejamento de rotina de alimentação para animais

Contextualização

Muitos projetos de pesquisa exigem que um plantel de animais em cativeiro seja mantido durante certo tempo. O ideal é que estes animais sejam tratados da melhor maneira possível à fim de minimizar ao máximo o stress, controlando as condições de temperatura, ruídos, ciclo de claro e escuro, higiene, etc. A alimentação é um dos fatores de maior importância, não somente pelo bem-estar animal, mas porque muitos trabalhos são relativos à dieta, como por exemplo o comportamento, plasticidade fenotípica, crescimento, maturidade sexual, dentre outros. Desta forma torna-se necessário um bom planejamento da alimentação, visto que acertadamente, muitos projetos são sujeitos à analise de uma comissão de ética e necessitam de aprovação de um cronograma para liberação dos recursos. Para tanto, eventualmente uma planilha de previsão de médio ou longo prazo é montada, entretanto fatores como o ganho de peso dos animais pode acarretar problemas no cronograma e o projeto pode sofrer atrasos. O objetivo desta função é criar uma planilha contendo a previsão de alimentação tendo em vista características essenciais da pesquisa em questão, como diferença entre sexos, grupos de dieta diversificados e ajuste da taxa de crescimento ou engorda dos animais, evitando entraves e atrasos durante a execução do projeto.

Entrada de dados Die(x = c(), fp = (), ali = c(), tc = c(), nev = c(), mcr = FALSE)

Sendo:

x = número de animais por grupo

fp = faixa inicial de peso de cada grupo

ali = proporção do peso da alimentação em relação ao peso vivo do animal

tc = taxa de engorda aproximada em proporção ao final do período

nev = Número máximo de eventos de alimentação.

mcr = modelo de crescimento, poderá ser linear, exponencial ou Von Bertalanffy.

Um arquivo em formato csv ou txt poderá ser utilizado desde que contenha as variáveis acima

Verificando parâmetros

  1. O data frame foi lido corretamente? Se não escreve: “dados não encontrados”
  2. Existe NAs? Se sim escreve: “NAs encontrados”
  3. Existem categorias não-numéricas? Se sim, escreve “categorias não numéricas”
  4. Os vetores possuem o mesmo tamanho? Se não, pára a função e escreve “vetores de tamanhos diferentes”

Pseudo-código

  • Lê o data frame
  • Item de lista não ordenadaSe não houver data frame, cria
  • Aplica os parâmetros necessários
  • Cria a previsão de alimentação pelo número de eventos
  • Cria um novo data frame com os eventos de alimentação
  • Salva o data frame
  • Plota uma curva de previsão de crescimento médio para cada grupo

Saída

  1. Data frame contendo a previsão de alimentação pelo número de eventos
  2. Gráfico com a curva de crescimento estimada pela previsão para cada grupo

Comentários Andre Chalom

Salve, Lucas!

Essa proposta também é interessante, e acho que é factível no tempo que vocês tem. Estou particularmente curioso pra ver esse gráfico de crescimento de peso dos grupos. Algumas críticas pra ajudar a pensar essa função:

  1. Na validação de dados, acho importante verificar se os vetores tem o mesmo tamanho. O que acontece se x = c(5, 10) e fp = c(10)?
  2. Quando você interrompe a simulação? Não deveria haver um parâmetro controlando “tempo final” ou “peso final”?
  3. Qual modelo de crescimento você está considerando? Vc tem um parâmetro que diz “exp = FALSE”, isso controla se o crescimento é exponencial ou o que? Von Bertalanffy? Isso precisa estar explicitado na proposta, de preferência com referências.
  4. Você incluiu um “…” no final da lista de argumentos da função. Como esse “…” vai ser usado?
  5. NAs e dados não numéricos geram só uma mensagem (warning) ou interrompem a execução?

AbRaços!

1 - Sim, creio que os vetores de mesmo tamanho é um dos fatores mais importantes da função, pois todos os grupos precisariam dos mesmos atributos para rodar. 2 – Vou incluir um parâmetro contendo o número máximo de eventos de alimentação (uma vez que os grupos podem ter intervalos de alimentação diferenciados), e este seria o controle para o término da simulação. Neste caso o usuário deve saber quantas vezes alimentará cada grupo dependendo do delineamento experimenta, e quanto tempo durará. 3 – O ideal seria que o usuário pudesse escolher qual modelo de crescimento quer usar, como Von Bertalanffy, exponencial ou linear, tendo como “default” o modelo linear. 4 – Com os “…” gostaria de dizer que a função aceitaria os parâmetros de modelos de crescimento explicitados acima, entretanto creio que da forma como escrevi teve um efeito dúbio, desta forma vou reescrever o imput. 5 – Nas devem gerar uma mensagem de warning sem interromper a função. Isto porque a função deverá ser capaz de lidar com números faltantes, visto que a quantidade de eventos de alimentação podem ser diferentes entre os grupos (ex, grupo 1 alimentado quinzenalmente, enquanto grupo 2 alimentado mensalmente).

05_curso_antigo/r2018/alunos/trabalho_final/hlucascs/fun2.txt · Última modificação: 2020/08/12 06:04 (edição externa)