From e482a474f8532979dd66d60a6358cd32153f0885 Mon Sep 17 00:00:00 2001 From: zawam Date: Fri, 27 Jan 2017 08:53:46 +0100 Subject: [PATCH 1/5] add Rproject --- antares-rpackageTD.Rproj | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 antares-rpackageTD.Rproj diff --git a/antares-rpackageTD.Rproj b/antares-rpackageTD.Rproj new file mode 100644 index 0000000..f43d039 --- /dev/null +++ b/antares-rpackageTD.Rproj @@ -0,0 +1,13 @@ +Version: 1.0 + +RestoreWorkspace: Default +SaveWorkspace: Default +AlwaysSaveHistory: Default + +EnableCodeIndexing: Yes +UseSpacesForTab: Yes +NumSpacesForTab: 2 +Encoding: ISO8859-1 + +RnwWeave: Sweave +LaTeX: pdfLaTeX From d77fc5b6bd67e309240e7ee2f786e64ad2c9cff5 Mon Sep 17 00:00:00 2001 From: zawam Date: Fri, 27 Jan 2017 09:37:15 +0100 Subject: [PATCH 2/5] quelques corrections --- init.R | 59 ++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 35 insertions(+), 24 deletions(-) diff --git a/init.R b/init.R index 6c40925..5977a61 100644 --- a/init.R +++ b/init.R @@ -29,15 +29,14 @@ areas[,mean(`MRG. PRICE`),by=area] areas[,.(prix_moyen = mean(`MRG. PRICE`)),by=area] -# calculer pour chaque area a chauqe tranche horainre le MRG price moyen ==== +# calculer pour chaque area a chaque tranche horaire le MRG prix moyen ==== areas %>% group_by(area,hour) %>% summarise(prix_moyen=mean(`MRG. PRICE`)) areas[,mean(`MRG. PRICE`),by=.(area,hour)] areas[,.(prix_moyen = mean(`MRG. PRICE`)),by=.(area,hour)] - -# calculer pour chaque area a chaque heure la moyenne de tous les maximum ==== +# calculer pour chaque area a chaque heure la moyenne de tous les maximums (exemple de maximum : BALANCE_max) ==== areas %>% group_by(area,hour) %>% summarise_each(funs(mean),ends_with("max")) areas %>% group_by(area,hour) %>% summarise_each(funs(mean),contains("max")) areas %>% group_by(area,hour) %>% @@ -54,6 +53,8 @@ areas[,lapply(.SD,mean), areas[,c("area","hour",select_vars(names(areas), contains("max"))),with=FALSE][,lapply(.SD,mean),by=.(area,hour)] areas[,c("area","hour",select_vars(names(areas), contains("max"))),with=TRUE] + +## effectuer un benchemark sur les traitements précédents microbenchmark::microbenchmark(areas[,lapply(.SD,mean), .SDcols= select_vars(names(areas), contains("max")), by=.(area,hour)],areas[,c("area","hour",select_vars(names(areas), contains("max"))),with=FALSE][,lapply(.SD,mean),by=.(area,hour)] @@ -81,34 +82,44 @@ areas2 <- areas %>% filter(area=="a") areas2b <- areas[area=="a",] - # supprimer la colonne area ==== areas3 <- areas2 %>% select(-area) -areas3b <- areas2b[,area:=NULL] +areas3b <- areas2b[,area:=NULL] #la colonne area est aussi supprimé dans areas2b + +##à voir si vous voulez aborder ce point ici +is.null(areas3b$area) #TRUE +is.null(areas2b$area) #TRUE + +areas2b <- areas[area=="a",] +areas4b <- copy(areas2b) +areas4b<-areas4b[,area:=NULL] + +is.null(areas4b$area) #TRUE +is.null(areas2b$area) #FALSE -# ne garder que les colonnes de cout et de prix et d'emission de CO2 ==== +# ne garder que les colonnes de cout, de prix et le cout total de production (ie `OV. COST`) ==== -areas4 <- areas3 %>% select(contains("COST"),contains("PRICE"),`CO2 EMIS.`) +areas4 <- areas3 %>% select(contains("COST"),contains("PRICE"),`OV. COST`) areas4b <- areas3b[, - select_vars(names(areas3b),contains("COST"),contains("PRICE"),`CO2 EMIS.`), + select_vars(names(areas3b),contains("COST"),contains("PRICE"),`OV. COST`), with=FALSE] -# rajouter une colonne qui correspon au ratio de CO2 EMIS. par PRICE MRG.==== -# Arrondir le résulat a 2 chiffres apres la virgule ==== +# rajouter une colonne qui correspond au ratio de `OV. COST` par PRICE MRG.==== +# Arrondir le resulat a 2 chiffres apres la virgule ==== -areas5 <- areas4 %>% mutate(ratio =`CO2 EMIS.`/`MRG. PRICE`, +areas5 <- areas4 %>% mutate(ratio =`OV. COST`/`MRG. PRICE`, ratio=round(ratio,2)) -areas4b[,ratio := round(`CO2 EMIS.`/`MRG. PRICE`,2)] -areas4b[,ratio := `CO2 EMIS.`/`MRG. PRICE` +areas4b[,ratio := round(`OV. COST`/`MRG. PRICE`,2)] +areas4b[,ratio := `OV. COST`/`MRG. PRICE` ][,ratio := round(ratio,2)] -# changer le nom de la colonne CO2 EMIS. par "emission_co2 ==== -setnames(areas4b,'CO2 EMIS.',"emission_co2") +# changer le nom de la colonne OV. COST par "cout_total ==== +setnames(areas4b,'OV. COST',"cout_total") # exporter le resultat en CSV==== @@ -117,23 +128,23 @@ setnames(areas4b,'CO2 EMIS.',"emission_co2") areas %>% filter(area=="a") %>% select(-area) %>% - select(contains("COST"),contains("PRICE"),`CO2 EMIS.`) %>% - mutate(ratio =`CO2 EMIS.`/`MRG. PRICE`, + select(contains("COST"),contains("PRICE"),`OV. COST`) %>% + mutate(ratio =`OV. COST`/`MRG. PRICE`, ratio=round(ratio,2)) %>% arrange(ratio) %>% - rename(emission_co2 = `CO2 EMIS.`) %>% + rename(cout_total = `OV. COST`) %>% write.csv2(file="out.csv",row.names=FALSE) areas[area=="a", - select_vars(names(areas),contains("COST"),contains("PRICE"),`CO2 EMIS.`), - with=FALSE][,ratio := round(`CO2 EMIS.`/`MRG. PRICE`,2)][order(ratio)] + select_vars(names(areas),contains("COST"),contains("PRICE"),`OV. COST`), + with=FALSE][,ratio := round(`OV. COST`/`MRG. PRICE`,2)][order(ratio)] browseURL("out.csv") -# changer le nom de la colonne CO2 EMIS. par "emission_co2 === +# changer le nom de la colonne OV. COST par "cout_total ==== # exporter le résultat dans un fichier csv @@ -151,11 +162,11 @@ browseURL("out.csv") areas %>% filter(area=="a") %>% select(-area) %>% - select(contains("COST"),contains("PRICE"),`CO2 EMIS.`) %>% - mutate(ratio =`CO2 EMIS.`/`MRG. PRICE`, + select(contains("COST"),contains("PRICE"),`OV. COST`) %>% + mutate(ratio =`OV. COST`/`MRG. PRICE`, ratio=round(ratio,2)) %>% arrange(ratio) %>% - rename(emission_co2 = `CO2 EMIS.`) %>% + rename(cout_total = `OV. COST`) %>% write.csv2(file="out.csv",row.names=FALSE) areas From b37cd492922aeebccfc8d342bd8012ed90afdd9d Mon Sep 17 00:00:00 2001 From: zawam Date: Fri, 27 Jan 2017 09:37:27 +0100 Subject: [PATCH 3/5] add .gitignore --- .gitignore | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..344b46d --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.Rproj.user +.Rhistory +.RData +.Ruserdata +out.csv \ No newline at end of file From 5951ec4f7fee496437059202deb3812538a76688 Mon Sep 17 00:00:00 2001 From: zawam Date: Mon, 30 Jan 2017 10:00:15 +0100 Subject: [PATCH 4/5] correction des exemples sur le ratio et ajout d'exemple sur la creation de package R --- init.R | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/init.R b/init.R index 5977a61..e1b1abd 100644 --- a/init.R +++ b/init.R @@ -98,28 +98,28 @@ areas4b<-areas4b[,area:=NULL] is.null(areas4b$area) #TRUE is.null(areas2b$area) #FALSE -# ne garder que les colonnes de cout, de prix et le cout total de production (ie `OV. COST`) ==== +# ne garder que les colonnes de consommation et d'éolien ==== -areas4 <- areas3 %>% select(contains("COST"),contains("PRICE"),`OV. COST`) +areas4 <- areas3 %>% select(contains("LOAD"),contains("WIND"), `OV. COST`) areas4b <- areas3b[, - select_vars(names(areas3b),contains("COST"),contains("PRICE"),`OV. COST`), + select_vars(names(areas3b),contains("LOAD"),contains("WIND")), with=FALSE] -# rajouter une colonne qui correspond au ratio de `OV. COST` par PRICE MRG.==== +# rajouter une colonne qui correspond au ratio de `WIND` par LOAD ==== # Arrondir le resulat a 2 chiffres apres la virgule ==== -areas5 <- areas4 %>% mutate(ratio =`OV. COST`/`MRG. PRICE`, +areas5 <- areas4 %>% mutate(ratio=WIND/LOAD, ratio=round(ratio,2)) -areas4b[,ratio := round(`OV. COST`/`MRG. PRICE`,2)] -areas4b[,ratio := `OV. COST`/`MRG. PRICE` +areas4b[,ratio := round(WIND/LOAD,2)] +areas4b[,ratio := WIND/LOAD ][,ratio := round(ratio,2)] # changer le nom de la colonne OV. COST par "cout_total ==== -setnames(areas4b,'OV. COST',"cout_total") +setnames(areas4,'OV. COST',"cout_total") # exporter le resultat en CSV==== @@ -128,21 +128,28 @@ setnames(areas4b,'OV. COST',"cout_total") areas %>% filter(area=="a") %>% select(-area) %>% - select(contains("COST"),contains("PRICE"),`OV. COST`) %>% - mutate(ratio =`OV. COST`/`MRG. PRICE`, + select(contains("LOAD"),contains("WIND"),`OV. COST`) %>% + mutate(ratio=WIND/LOAD, ratio=round(ratio,2)) %>% arrange(ratio) %>% rename(cout_total = `OV. COST`) %>% write.csv2(file="out.csv",row.names=FALSE) +browseURL("out.csv") + +### Créer un package R contenant cette dernière instruction ==== +## documenté (roxygen2) et testé (testhat) areas[area=="a", - select_vars(names(areas),contains("COST"),contains("PRICE"),`OV. COST`), - with=FALSE][,ratio := round(`OV. COST`/`MRG. PRICE`,2)][order(ratio)] + select_vars(names(areas),contains("LOAD"),contains("WIND"),`OV. COST`), + with=FALSE][,ratio := round(WIND/LOAD,2)][order(ratio)] +browseURL("out.csv") + +### Créer un package R contenant cette dernière instruction ==== +## documenté (roxygen2) et testé (testhat) -browseURL("out.csv") # changer le nom de la colonne OV. COST par "cout_total ==== @@ -162,13 +169,18 @@ browseURL("out.csv") areas %>% filter(area=="a") %>% select(-area) %>% - select(contains("COST"),contains("PRICE"),`OV. COST`) %>% - mutate(ratio =`OV. COST`/`MRG. PRICE`, + select(contains("LOAD"),contains("WIND"),`OV. COST`) %>% + mutate(ratio =WIND/LOAD, ratio=round(ratio,2)) %>% arrange(ratio) %>% rename(cout_total = `OV. COST`) %>% write.csv2(file="out.csv",row.names=FALSE) +browseURL("out.csv") + areas +### Créer un package R contenant cette dernière instruction ==== +## documenté (roxygen2) et testé (testhat) + From 0c57b86b82669ea947101189144fc8c9eb273799 Mon Sep 17 00:00:00 2001 From: zawam Date: Mon, 30 Jan 2017 10:02:09 +0100 Subject: [PATCH 5/5] =?UTF-8?q?setSimulationPath=20pourra=20ne=20pas=20?= =?UTF-8?q?=C3=AAtre=20present=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- init.R | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/init.R b/init.R index e1b1abd..82035b4 100644 --- a/init.R +++ b/init.R @@ -1,11 +1,15 @@ library(dplyr) library(antaresRead) -setSimulationPath() +### chargement des données depuis une étude ANTARES==== +# Cette étape peut ne pas être présentée +setSimulationPath() areas <- readAntares() # equivalent to readAntares(areas="all") links <- readAntares(links="all") save(areas,links, file="TD_RTE.Rdata") + +### chargement des données depuis un Rdata ==== load("TD_RTE.Rdata") # visualiser la base, en afficher les statistiques descriptives ====