Hello List,
 
 I am working on creating periodograms from IP network traffic logs using the Fast Fourier Transform.  The FFT requires all the data points to be evenly-spaced in the time domain (constant delta-T), so I have a step where I zero-pad the data.
 
 Lately I've been wondering if there is a faster way to do this.  Here's what I've got:
 
 * data1 is a data frame consisting of a timestamp, in seconds, from the beginning of the network log, and the number of network events that fell on that timestamp.
 Example:
 time,events
 0,1
 1,30
 5,14
 10,4
 
 *data2 is the zero-padded data frame.  It has length equal to the greatest value of "time" in data2:
 time,events
 1,0
 2,0
 3,0
 4,0
 5,0
 6,0
 7,0
 8,0
 9,0
 10,0
 
 So I run this for loop:
 for(i in 1:length(data1[,1])) {
     data2[data1[i,1],2]<-data1[i,2]
 }
 
 Which goes to each row in data1, reads the timestamp, and writes the "events" to the corresponding row in data2.  The result is:
 time,events
 0,1
 1,30
 2,0
 3,0
 4,0
 5,14
 6,0
 7,0
 9,0
 9,0
 10,4
 
 For a 24-hour log (86,400 seconds) this can take a while...Any advice on how to speed it up would be appreciated.
 
 Thanks,
 Pete Cap
 
		
---------------------------------

	[[alternative HTML version deleted]]

