I have the following data:
dates       CLOSE    USED
20110309    58,1483 Historico
NA          58,1483 
NA          57,0001 
20110310    34,999  Historico
NA          57,1272 
NA          55,9756 
20110311    59,898  Historico
NA          56,3055 
NA          55,1518 
I want to replicate the value of the dates and the used in the following lines if they are empty or NA, as in the below table:
dates       CLOSE      USED
20110309    58,1483 Historico
20110309    57,0001 Historico
20110310    57,1272 Historico
20110310    55,9756 Historico
20110311    56,3055 Historico
20110311    55,1518 Historico
I use a for loop for doing it:
  for (j in 1:dim(data)[1]){
    if(is.na(data$dates[j]) || (data$USED=="")){
      data$dates[j]=data$dates[j-1]
      data$USED[j]=data$USED[j-1]
    }
It's a bit slow because of the loop, as my files are large, so I was wondering if it's a faster way to deploy it.
I've also tried to use which function, but it doesn't work properly:
data$dates[which(is.na(data$dates))]=data$dates[which(is.na(data$dates))-1]
It only work for one empty line, as it's shown below:
dates       CLOSE    USED
20110309    58,1483 Historico
20110309    58,1483 Historico
NA          57,0001 
20110310    34,999  Historico
20110310    57,1272 Historico
NA          55,9756 
20110311    59,898  Historico
20110311    56,3055 Historico
NA          55,1518 
If anyone knows a faster way to do it...
Thanks!
 
    