I'm trying to use approxfun to calculate missing value using interpolate:
column_name <- colnames(vndusd_merged);
lapply(column_name, function(x){
  if(x != "Date"){ 
    interpl <- approxfun(vndusd_merged$Date[!is.na(vndusd_merged$x)], vndusd_merged$x[!is.na(vndusd_merged$x)]);
    vndusd_merged$x <- interpl(vndusd_merged$Date);  
  }
})
I keep getting this error:
Error in approxfun(vndusd_merged$Date[!is.na(vndusd_merged$x)], vndusd_merged$x[!is.na(vndusd_merged$x)]) : 
  need at least two non-NA values to interpolate 
4.
stop("need at least two non-NA values to interpolate") 
3.
approxfun(vndusd_merged$Date[!is.na(vndusd_merged$x)], vndusd_merged$x[!is.na(vndusd_merged$x)]) 
2.
FUN(X[[i]], ...) 
1.
lapply(column_name, function(x) {
    if (x != "Date") {
        interpl <- approxfun(vndusd_merged$Date[!is.na(vndusd_merged$x)], 
            vndusd_merged$x[!is.na(vndusd_merged$x)]) ... 
Here are the sample of the first 20 row of vndusd_merged. The column "Date" does not have any N/A
         Date Ask.Close Bid.Close
1  01/01/2014     21115     21075
2  02/01/2014     21160     21060
3  03/01/2014     21115     21075
4  04/01/2014        NA        NA
5  05/01/2014        NA        NA
6  06/01/2014     21120     21080
7  07/01/2014     21115     21075
8  08/01/2014     21120     21080
9  09/01/2014     21115     21075
10 10/01/2014     21110     21072
11 11/01/2014        NA        NA
12 12/01/2014        NA        NA
13 13/01/2014     21120     21060
14 14/01/2014     21110     21072
15 15/01/2014     21110     21070
16 16/01/2014     21120     21080
17 17/01/2014     21110     21070
18 18/01/2014        NA        NA
19 19/01/2014        NA        NA
20 20/01/2014     21110     21070
I tried to run it by inserting the column name manually but I still got the same error.
interpl <- aproxfun(vndusd_merged$Date[!is.na(vndusd_merged$Ask.Close)], vndusd_merged$Ask.Close[!is.na(vndusd_merged$Ask.Close)]);
How can I solve this problem?
 
     
    