2015-09-04 1 views
0

Veuillez accepter mes excuses car je suis nouveau à R. Le code suivant est utilisé pour traiter plusieurs fichiers en une fois et placer la sortie dans un dossier séparé .Erreur dans fichier.exists (chemin): argument 'fichier' invalide dans R

require(highfrequency) 
require(quantmod) 
require(readxl) 
input_files1=list("file_path1.xlsx","file_path2.xlsx","file_path3.xlsx") #making list of file paths 

for(i in length(input_files1)) 

{ 
    bid_df<-read_excel(input_files1[i], sheet = 1, col_names = TRUE, col_types = NULL, na = "", skip = 0) 
#read_excel takes file path as first argument 
    ask_df<-read_excel(input_files1[i], sheet = 2, col_names = TRUE, col_types = NULL, na = "", skip = 0) 

    trade_df<-read_excel(input_files1[i], sheet = 3, col_names = TRUE, col_types = NULL, na = "", skip = 0) 

    qdata_df <- merge(ask_df, bid_df, by = "TIMESTAMP") 
    qdata_xts_raw<-xts(qdata_df[,-1], order.by=qdata_df[,1]) 
    qdata_xts_m<-mergeQuotesSameTimestamp(qdata_xts_raw, selection = "median") 
    trade_xts_raw <- xts(trade_df[,-1], order.by=trade_df[,1]) 
    trade_xts_m<-mergeTradesSameTimestamp(trade_xts_raw, selection = "median") 
    tqdata=matchTradesQuotes(trade_xts_m,qdata_xts_m) 
    quoted_spread<-tqLiquidity(tqdata,trade_xts_m,qdata_xts_m,type="qs") 
    qs_30<-aggregatets(quoted_spread,FUN="mean",on="minutes",k=30) 
    indexTZ(qs_30) <- "UTC" 

    write.csv(qs_30, file = file.path("output_file_path", paste0("CAN_out", i))) 
    } 

Lorsque le code est exécuté, il donne l'erreur suivante Erreur dans File.Exists (chemin): invalide « fichier » argument de S'il vous plaît aider à éliminer l'erreur et l'exécution du code.

+1

Quel est le contenu de 'input_files1' dans votre code de production? Je suppose que vous avez changé le code avant de le poster car sinon la configuration était ... bizarre (car la liste contient la même valeur trois fois). De plus, 'i in length (input_files1)' devrait être 'i dans 1: length (input_files1)'. Vous pouvez essayer de tracer l'erreur en exécutant votre code ligne par ligne. –

+0

@ user2706569 un grand merci pour les suggestions aimables –

Répondre

0

éléments d'accès de la liste dans le chemin que input_files1 [[i]]