William, num_obs obviously isn't a vector, therefore length(num_obs) will evaluate to one. Hence your for loop control part will expand to
for (i in 1:1) while it should probably read: for (i in 1:num_obs) Best Hugo On Wednesday 18 May 2011 17:18:15 armstrwa wrote: > Hi all, > > This is a very basic question, but I just can't figure out why R is handling > a loop I'm writing the way it is. > > Here is the script I have written: > > grid_2_series<-function(gage_handle,data_type,filename) > > series_name<-paste(gage_handle,data_type,sep="_") > data_grid<-read.table(file=paste(filename,".txt",sep="")) > > num_rows_data<-nrow(data_grid)-1 > num_cols_data<-ncol(data_grid)-4 > num_obs<-num_rows_data*num_cols_data > > time_series<-matrix(nrow=0,ncol=2) > > for(i in 1:length(num_obs)){ > rownum<-ceiling(i/31)+1 > colnum<-if(i%%31==0){ > 35 > }else{ > (i%%31)+4 > } > year<-data_grid[rownum,2] > month<-data_grid[rownum,3] > day<-colnum-4 > date_string<-paste(month,day,year,sep="/") > date<-as.Date(date_string,format='%m/%d/%Y') > value<-as.character(data_grid[rownum,colnum]) > time_series<-rbind(time_series,c(date,value)) > } > > The script is working as I intended it to (goes through a matrix of data > where column 2 is the year, column 3 is the month, and row 1 columns 5-35 > are the day of the month the observation was recorded [I have included a > screenshot below to help visualize what I'm talking about] and converts the > grid into a 2 column time series where column 1 is the date and column 2 is > the value of the observation), but it is stopping after only 1 iteration. > > nabble_img src="matrix_screenshot.jpg" border="0"/> > > Two questions: > > 1.) Does anyone know of an existing function to accomplish this task? > 2.) Why is the loop stopping after 1 iteration? I have it written to > iterate up to the total number of observations (20,615 in one case). > > Thank you for your help and sorry for this question which I'm sure has a > very simple answer. > > Thanks again, > > Billy< > > -- > View this message in context: > http://r.789695.n4.nabble.com/Loop-stopping-after-1-iteration-tp3532988p3532988.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > R-help@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. > ______________________________________________ R-help@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.