[R] Function that create day of the year column.

Frederic Ntirenganya ntfredo at gmail.com
Tue Nov 4 11:01:29 CET 2014


Dear All,

I would like to make a function that create Day of the year column in a
dataset.
State of the problem: write a function that create a day column either from
a single date column (string/or factors) or from date in 3 columns (year,
month, day).

I made the following function for a single date. I would like to add a
condition for date in 3 columns (year, month, day). My data is daily
climate data.
#write a function that create a day column either from a single date column
(string/or factors)
#or from date in 3 columns (year, month, day).

DOY=function(data){

#=================================================================
#This function create day of teh year from a single date
column(ex:2009-08-02) or/and
#from the date in 3 columns (Year, month, Day).
#================================================================
  data$Rain=as.numeric(as.character(data$Rain))
  dt=yday(data$Date) # single date of the data
  datelp= dt>59 & !leap_year(data$Date)# tell us that the date occurs
during a leap year
  dt[datelp]=dt[datelp]+1 # add one for non leap_year
  cbind(data, dt) # combining columns of data
  conames(data)="DOY" # name of new column. ??I have a problem on how I can
precise the column in gerenal.
}

ex: year  month day   Date         Rain Tmin Tmax
      1971   1         1    1971-01-01   0     8.2  15
       1971  1         2    1971-01-02   0     4.2  11
        .        .          .       .               .      .      .
        .        .          .       .               .      .      .
        .        .          .       .               .      .      .

Any ideal on how I can make this function is welcome. thanks!
Frederic Ntirenganya
Maseno University,
African Maths Initiative,
Kenya.
Mobile:(+254)718492836
Email: fredo at aims.ac.za
https://sites.google.com/a/aims.ac.za/fredo/

	[[alternative HTML version deleted]]



More information about the R-help mailing list