[R] Faster way to combine data sets with different date ranges

John Kane jrkrideau at yahoo.ca
Sat Nov 8 17:22:54 CET 2008


Just expand the weekly data set to have an entry for each day and cbind SurveyData with the new Modified.sat.data.

I was having a similar problem but with dates and here was a solution suggested by Gustaf Rydevik using rep() with the each option.
========================================================================
time<-rep(1:24, 365)
dates<-seq(as.Date("01012005",format="%d%m%Y"),as.Date("31122005",format="%d%m%Y"),by=1)
TimeFrame<-data.frame(time)
TimeFrame$dates<-rep(dates,each=24)
=========================================================================




--- On Fri, 11/7/08, t c <mudiver1200 at yahoo.com> wrote:

> From: t c <mudiver1200 at yahoo.com>
> Subject: [R] Faster way to combine data sets with different date ranges
> To: r-help at r-project.org
> Received: Friday, November 7, 2008, 6:19 PM
> I am trying to combine two data sets, one with daily values
> and one with weekly values.  SurveyData conatins
> environmental data collected on a daily basis.  sat.data
> contains satellite sea surface temperature that is an
> average of satellite measurements over a six day period.  I
> would like to combine the two files so that my output file
> has the daily dates from SurveyData and the weekly average
> from sat.data that corresponds to that day.  I have written
> a loop that does exactly what I want, but it takes a very
> long time.  Is there a faster way to do this?  What I have
> so far is below.
> Thanks,
> Tim
> 
> #Compare dates
>  for(i in 1:length(SurveyData$Date))
>  {
>  print(i)
>  for(j in 1:length(sat.data$Date.Start))
>   {
>   if(
>   sat.data$Date.Start[j]<=SurveyData$Date[i] &
>   sat.data$Date.End[j]>=SurveyData$Date[i])
>   survey.data[i]<- sat.data$data[j]
>   }
>  } 
>  
> #Create data frame with final data
>  final.data<-data.frame(SurveyData$Record,SurveyData$Date,survey.data)
>  
> #Write data to file
>  write.csv(final.data,file="Combined.csv")
> 
> 
> 
>       
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org 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.


      __________________________________________________________________
Ask a question on any topic and get answers from real people. Go to Yahoo! Answers and share what you know at http://ca.answers.yahoo.com



More information about the R-help mailing list