Traduções desta página:

Ferramentas do usuário

Ferramentas do site


05_curso_antigo:r2013:alunos:trabalho_final:fmendez:start

Fernando Jose Mendez Gaona

Doutorando em Meteorologia, Departamento de Ciências Atmosféricas, Insituto de Astronomia Geofisica e Ciências Atmosféricas. O projeto de Doutorado titula se Efeitos das condições ambientais nas doenças respiratórias em crianças menores de 2 anos na Grande São Paulo: em particular os efeitos das partículas finas. Orientador Prof . Fabio Luis Teixeira Gonçalves.

Meus exercicios

===== Minha Proposta

Plano A

Fazer uma função que posa calcular o indices biometeorologicos de conforto termico, indices que eu presisso para meu projeto de teses, a função alem de calcular o indice fornecera as condições de conforto termico a partir de um criterio proposto por Franger 1972, condições que presissan do indice. As condições segundo o Franger são= Muito frio,frio, moderadamente frio, confortavel, ligeiramente quente, quente moderado, muito quente. A clasifição da condição é feita mediante uma comparação entre os intervalos de temperatura propostos por Franger e os indices gerados pela função. Para o calculo dos indices são necesarios dado diarios maximo-minimo da a Temperatura do ar e a umidade relativa. Os dados estão disponivilizados na estação meteorologica do IAG USP.Os dados estão na forma de data.frame. A saida da função sera a) un dataframe de data e indice de conforto b) uma tabela indicando a situação de conforto termico diario em relação ao Franger.

Plano B

A segunda proposta é em relação aos poluentes atmosfericos em São Paulo como CO,PM10,PM2.5,O3,tambem necessario para o projeto de doutorado. A ideia é com os dados horarios dos poluentes fornecidos da CETESB, fazer umas funções que determinem as concentrações medias diarias, mensais, sasonais e anuais dos poluentes. Os resultados seriam graficos e tabelas. Em principio os dados faltantes que existem terian que ser “recreados” a partir de uma interpolção para logo fazer os resultado da proposta B. Os dados são em formatos de data frame originalmente en csv.

Ajuda

Comentários

Oi Fernando

As duas propostas me parecem factíveis, mas você poderia detalhar melhor alguns aspectos:

No plano A:

1) Como é o cáculo do índice?

2) Como são definidas as condições de Franger?

3) Por que a saída é um data frame E uma tabela? Não poderia ser um único dataframe com uma coluna de índice de conforto, outra com as condições de Franger e cada dia numa linha?

No plano B:

1) Que tipo de gráficos e tabelas seriam o seu output? Você teria como saída um gráfico e uma tabela com as médias diarias, outro com as mensais, outros das sasonais e outro das anuais sempre? Que tal colocar o intervalo de tempo para o qual será calculada a média como um argumento da sua função?

Como as duas propostas parecem bem simples, acho que dá para fazer as duas. Você consegue pensar um jeito de juntar o plano A e o B numa única função que seja interessante para você?

Respostas 1) O indice é calculado mediante a equação I= T-0.4*1)

1)
1-UR/100)*(T-10) 2) as condições de Franger são definidas de acordo com o I, o I é tipo uma senção termica, Criterio Franger= I(graus Celsius) Senção termica Grau de estresse fisiologico
                   < 13               muito frio           extremo estresse ao frio
                  13 <=16               frio                  tiritar
                  16<=19             frio moderado      ligeiro resfriamento do corpo
                  19<=22           ligeiramente frio      vasocontrição
                  22<=25            confortavel             neutralidade termica
                  25<=28            ligeiramente quente  ligeiro suor,vasolidação
                  28<=31           quente moderado         suando
                  31<=34            quente                 suor em profução
                  >34       muito quente    falha na termorregulação estresse por calo                  
                  
3) o data.frame por que para apresntar os indices a senção e grau de estresse, acho so isso necesseario não a tabela. plano B 1) graficos serão boxplot, disperção, hist, e series temporis dos poluentes, si, asi como você coloco graficos para cada uma delas. Sim seria optimo colocar argumentos então como argumento. Para juntar uma função so acho que não pela natureza dos dados, mas num mesmo arquivo e ter 2 funções poderia ser, isso pelo menos eu imagino agora( você acha que possso juntar em uma função so?)obrigado Eu acho que nao consigo fazer uma funcao so para os planos A e B o plano A es mas complexo que do B, que apresentare ta bom? =====Trabalho final =====
Te                              package:unknown                               R Documentation

Temperatura efeitiva

Descrição:

Função para determinar os indice de conforto termico ambiental a partir do indice biometeorologico da temperatura efeitiva (Te) externa e sensação termica, o resultado é um dataframe onde é apresentado a temperatura maxima a minima a umidade relativa maxima e minima todos dados inicialmente, alem disso são apresentados os indices Te1, Te2, Te3, Te4, e as sensaçãos na manha e na tarde respetivamente. 

Uso:

Te(x,rmNA=TRUE)

Argumentos

x:  Dataframe de 4 colunas onde as colunas 1 e 2 são a temperatura maxima, minima em graus Celcius, as 3 e 4 é a umidade relativa maxima e minima em %.
rmNA=: é a remoção dos valores onde tenhan valores faltantes ou missing

Atenção

Se o dataframe de dados não é tem o mesmo numero de colunos a função retorna mensajem de erro.

Autor

Fernando José Méndez Gaona

Exemplos
Te(data.frame(c(20,21,24),c(13,15,16),c(89,87,76),c(67,66,59)),TRUE)# data frame onde as colunas sao temperatura maxima temperatura minima, umidade relativa maxima e umidade relativa minima.

 tmax tmin URmax URmin    Te1    Te2    Te3    Te4 Sensacao.de.Manha Sensacao.de.tarde
1   20   13    89    67 19.560 12.868 18.680 12.604        Muito Frio     Frio Moderado
2   21   15    87    66 20.428 14.740 19.504 14.320              Frio Ligeiramente Frio
3   24   16    76    59 22.656 15.424 21.704 15.016              Frio Ligeiramente Frio


Referencas

#Tromp, S.W, Biometeorology , The impact of the weather and climate on humans and their environment (animals and plants). London: Heiden, 1980.
#Disertacao do Samuel Braun para o grau de Mestre em meteorologia, Influência meteorotropicas nas doenças cardiovasculares na cidade de São Paulo. 2003.
# Tese de Doutorado em meteorologia do Anderson Nedel, Condições meteorologicas favoraveis à ocorrência de doenças respiratorias em crianças na Cidade de São Paulo. 2008.
====== Codigo da funcao ======
Te<-function(x,rmNA=TRUE){  ### x é data frame com temp max, tem min, UR max e min, como dados de entrada
  if(rmNA==TRUE){
    tmax<-na.omit(x[,1])
    tmin<-na.omit(x[,2])
    URmax<-na.omit(x[,3])
    URmin<-na.omit(x[,4])
    fatmax<-length(x[,1]-length(tmax))
    fatmin<-length(x[,2]-length(tmin))
    faURmax<-length(x[,3]-length(URmax))
    faURmin<-length(x[,4]-length(URmin))
    cat("\n\t",c(fatmax,fatmin,URmax,URmin),c("Miss tmax","Miss tmin","Miss URmax","URmin"))
  }
  else{
    tmax<-x[,1]
    tmin<-x[,2]
    URmax<-x[,3]
    URmin<-x[,4]
  }
 ### calculos dos indices Te para todas as combinacoes dos dados com os incides especias Te2 e Te3
  Te1<-tmax - (0.4*(1 - (URmax/100))*(tmax - 10))
  Te2<-tmin - (0.4*(1 - (URmax/100))*(tmin - 10))  ## horario da manha
  Te3<-tmax - (0.4*(1 - (URmin/100))*(tmax - 10))  ##horario da tarde
  Te4<-tmin - (0.4*(1 - (URmin/100))*(tmin - 10))
Sensacao.de.Manha<-rep(NA,length(Te2))
Sensacao.de.tarde<-rep(NA,length(Te3))

  
for ( i in 1:length(Te2)){
  
  if(Te2[i]<13){
    Sensacao.de.Manha[i]<-"Muito Frio"
  }
  if(Te2[i]>=13 & Te2[i]<16 ){
    Sensacao.de.Manha[i]<-"Frio"
  }
  if(Te2[i]>=16 & Te2[i]<19 ){
    Sensacao.de.Manha[i]<-"Ligeiramente Moderado"
  }
  if(Te2[i]>=19 & Te2[i]<22 ){
    Sensacao.de.Manha[i]<-"Ligeiramente Frio"
  }
  if(Te2[i]>=22 & Te2[i]<25 ){
    Sensacao.de.Manha[i]<-"Confortave"
  }
  if(Te2[i]>=25 & Te2[i]<28 ){
    Sensacao.de.Manha[i]<-"lLigeiramente quente"
  }
  if(Te2[i]>=28 & Te2[i]<31){
    Sensacao.de.Manha[i]<-"Quente moderado"
  }
  if(Te2[i]>=31 & Te2[i]<34){
    Sensacao.de.Manha[i]<-"Quente"
  }
  if(Te2[i]>=34){
    Sensacao.de.Manha[i]<-"Muito Quente"
  }
}
  
  for (i in 1:length(Te3)){
  if(Te3[i]<13){
    Sensacao.de.tarde[i]<-"Muito Frio"
  }
  if(Te3[i]>=13 & Te3[i]<16 ){
    Sensacao.de.tarde[i]<-"Frio"
  }
  if(Te3[i]>=16 & Te3[i]<19 ){
    Sensacao.de.tarde[i]<-"Frio Moderado"
  }
  if(Te3[i]>=19 & Te3[i]<22 ){
    Sensacao.de.tarde[i]<-"Ligeiramente Frio"
  }
  if(Te3[i]>=22 & Te3[i]<25 ){
    Sensacao.de.tarde[i]<-"Confortavel"
  }
  if(Te3[i]>=25 & Te3[i]<28 ){
    Sensacao.de.tarde[i]<-"Ligeiramente quente"
  }
  if(Te3[i]>=28 & Te3[i]<31){
    Sensacao.de.tarde[i]<-"Quente moderado"
  }
  if(Te3[i]>=31 & Te3[i]<34){
    Sensacao.de.tarde[i]<-"Quente"
  }
  if(Te3[i]>=34){
    Sensacao.de.tarde[i]<-"Muito Quente"
}
  }
  fina<-data.frame(tmax,tmin,URmax,URmin,Te1,Te2,Te3,Te4, Sensacao.de.Manha,Sensacao.de.tarde)
 return(fina)
 }
indices.r
05_curso_antigo/r2013/alunos/trabalho_final/fmendez/start.txt · Última modificação: 2020/08/12 06:04 (edição externa)