KOITA Lassana - STAC/ACE
2007-Aug-10 17:05 UTC
[R] need help to manipulate function and time interval
Hi R-users, I have to define a noise level function L and its energy in the various moment of the day by: if time is between 18:00:00 and 23:59:59 then L[j] <- L[j]+5 and W <- 10^((L+5)/10) if time is between 22:00:00 and 05:59:59 ==> L <- L+10 and W <- 10^((L+10)/10) else L=L and W = W Could someone help me to realize this function please? You will find my following proposal code, but my main problem is to handle the time interval. Best regard ########################### myfunc <- function(mytab, Time, Level) { vect <- rep(0, length(mytab)) for(i in 1:length(vect)) { for(j in 1:length(Time)) if(time[j] is between 18:00:00 and 23:59:59) L[i] <- L[j]+5 vect[i] <- 10^((L[i])/10 if (time[j] is between 22:00:00 and 05:59:59) L[i] <- L[j]+10 vect[i] <- 10^((L[i])/10 else L[i] = L[j] vect[i] <- 10^((L[i])/10 } } ####################### Lassana KOITA Chargé d'Etudes de Sécurité Aéroportuaire et d'Analyse Statistique / Project Engineer Airport Safety Studies & Statistical analysis Service Technique de l'Aviation Civile (STAC) / Civil Aviation Technical Department Direction Générale de l'Aviation Civile (DGAC) / French Civil Aviation Headquarters Tel: 01 49 56 80 60 Fax: 01 49 56 82 14 E-mail: Lassana.Koita@aviation-civile.gouv.fr http://www.stac.aviation-civile.gouv.fr/ [[alternative HTML version deleted]]
Henrique Dallazuanna
2007-Aug-10 17:22 UTC
[R] need help to manipulate function and time interval
Hi, Try whit: if(time[j] >= "18:00:00" & < "23:59:59") ... ... -- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O On 10/08/07, KOITA Lassana - STAC/ACE <lassana.koita@aviation-civile.gouv.fr> wrote:> > Hi R-users, > > I have to define a noise level function L and its energy in the various > moment of the day by: > > if time is between 18:00:00 and 23:59:59 then L[j] <- L[j]+5 and W <- > 10^((L+5)/10) > > if time is between 22:00:00 and 05:59:59 ==> L <- L+10 and W <- > 10^((L+10)/10) > else > L=L and W = W > > Could someone help me to realize this function please? You will find my > following proposal code, but my main problem is to handle the time > interval. > > Best regard > > ########################### > myfunc <- function(mytab, Time, Level) > { > vect <- rep(0, length(mytab)) > for(i in 1:length(vect)) > { > for(j in 1:length(Time)) > > if(time[j] is between 18:00:00 and 23:59:59) > > L[i] <- L[j]+5 > > vect[i] <- 10^((L[i])/10 > > if (time[j] is between 22:00:00 and 05:59:59) > > L[i] <- L[j]+10 > > vect[i] <- 10^((L[i])/10 > > else > > L[i] = L[j] > > vect[i] <- 10^((L[i])/10 > } > } > > ####################### > > Lassana KOITA > Chargé d'Etudes de Sécurité Aéroportuaire et d'Analyse Statistique / > Project Engineer Airport Safety Studies & Statistical analysis > Service Technique de l'Aviation Civile (STAC) / Civil Aviation Technical > Department > Direction Générale de l'Aviation Civile (DGAC) / French Civil Aviation > Headquarters > Tel: 01 49 56 80 60 > Fax: 01 49 56 82 14 > E-mail: Lassana.Koita@aviation-civile.gouv.fr > http://www.stac.aviation-civile.gouv.fr/ > [[alternative HTML version deleted]] > > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > >[[alternative HTML version deleted]]
KOITA Lassana - STAC/ACE wrote:> Hi R-users, > > I have to define a noise level function L and its energy in the various > moment of the day by: > > if time is between 18:00:00 and 23:59:59 then L[j] <- L[j]+5 and W <- > 10^((L+5)/10)What kind of object is time? Just a character or some Time/Date format? Do you know the day? If time is between 18:00:00 and 23:59:59, should the next point (time is between 22:00:00 and 05:59:59) be executed additionally if time is, e.g., 23:00:00 or is there any other condition I cannot see? All the information is quite essential in order to help... BTW: I don't think the rest of your code is sensible (at least, some braces are missing). Uwe Ligges> if time is between 22:00:00 and 05:59:59 ==> L <- L+10 and W <- > 10^((L+10)/10) > else > L=L and W = W > > Could someone help me to realize this function please? You will find my > following proposal code, but my main problem is to handle the time > interval. > > Best regard > > ########################### > myfunc <- function(mytab, Time, Level) > { > vect <- rep(0, length(mytab)) > for(i in 1:length(vect)) > { > for(j in 1:length(Time)) > > if(time[j] is between 18:00:00 and 23:59:59) > > L[i] <- L[j]+5 > > vect[i] <- 10^((L[i])/10 > > if (time[j] is between 22:00:00 and 05:59:59) > > L[i] <- L[j]+10 > > vect[i] <- 10^((L[i])/10 > > else > > L[i] = L[j] > > vect[i] <- 10^((L[i])/10 > } > } > > ####################### > > Lassana KOITA > Charg? d'Etudes de S?curit? A?roportuaire et d'Analyse Statistique / > Project Engineer Airport Safety Studies & Statistical analysis > Service Technique de l'Aviation Civile (STAC) / Civil Aviation Technical > Department > Direction G?n?rale de l'Aviation Civile (DGAC) / French Civil Aviation > Headquarters > Tel: 01 49 56 80 60 > Fax: 01 49 56 82 14 > E-mail: Lassana.Koita at aviation-civile.gouv.fr > http://www.stac.aviation-civile.gouv.fr/ > [[alternative HTML version deleted]] > > > > ------------------------------------------------------------------------ > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.