diff --git a/processing/format.R b/processing/format.R
index 696c8580cb61ebe49f195d126ca2f207fc477de7..e050c26dc2634676d6e09b50b4b5b58cbea828cb 100644
--- a/processing/format.R
+++ b/processing/format.R
@@ -33,32 +33,51 @@ join = function (df_data_BH, df_data_NV, df_info_BH, df_info_NV) {
 }
 
 
-prepare = function(df_data, colnamegroup) {
+prepare = function(df_data, colnamegroup=NULL) {
             
     colnamegroup = c(colnamegroup)
-
     colindgroup = which(colnames(df_data) == colnamegroup)
-
     df_data = group_by_at(df_data, colindgroup)
 
     data = tibble(Date=df_data$Date, 
                   group=group_indices(df_data),
                   Qm3s=df_data$Qm3s) 
-
     Gkey = group_keys(df_data)
+
     info = bind_cols(group=seq(1:nrow(Gkey)),
                      Gkey)
+    return (list(data=data, info=info))
+}
 
-    # df_data = tibble(Date=df_data$Date, 
-    #                  group=as.integer(factor(df_data$code)),
-    #                  Qm3s=df_data$Qm3s) 
 
-    # df_info$group = as.integer(factor(df_info$code))
+reprepare = function(df_dataEx, df_list, colnamegroup=NULL) {
 
-    return (list(data=data, info=info))
+    colnames(df_dataEx) = c('Date', 'group', 'Qm3s')
+
+    df_dataEx$Date = as.character(df_dataEx$Date)
+    exDate = df_dataEx$Date[1]
+    nbt = lengths(regmatches(exDate, gregexpr('-', exDate)))
+    
+    if (nbt == 1) {
+         df_dataEx$Date = paste(df_dataEx$Date, '01', sep='-')
+    } else if (nbt == 0) {
+         df_dataEx$Date = paste(df_dataEx$Date, '01', '01', sep='-')
+    } else if (nbt != 2) {
+        stop('erreur of date format')
+    }
+
+    df_dataEx = bind_cols(Date=as.Date(df_dataEx$Date,
+                                       format="%Y-%m-%d"),
+                          df_dataEx[-1],
+                          df_list$info[df_dataEx$group,
+                                       2:ncol(df_list$info)])
+
+    df_listEx = prepare(df_dataEx, colnamegroup=colnamegroup)
+    return (df_listEx)
 }
 
 
+
 clean = function (df_xTrend, df_list) {
 
     df_xTrend = bind_cols(df_xTrend,
diff --git a/script.R b/script.R
index 6da417bd7ad163024c92764a1bc31d315046ca68..723373c222cb142eaf7f7d4185ad9e20cd986ea0 100644
--- a/script.R
+++ b/script.R
@@ -150,12 +150,13 @@ df_info = df_join$info
 # df_lac = get_lacune(df_data, df_info)
 
 
-### /!\ verify order conservation ###
 # AVERAGE ANNUAL FLOW : QA #
+### /!\ verify order conservation ###
 df_QAlist = prepare(df_data, colnamegroup=c('code'))
 
 df_QAEx = extract.Var(data.station=df_QAlist,
                       funct=mean,
+                      timestep='year',
                       period=period,
                       pos.datetime=1,
                       na.rm=TRUE)
@@ -164,32 +165,48 @@ df_QATrend = clean(df_QATrend, df_QAlist)
 
 
 # MONTHLY MINIMUM FLOW IN THE YEAR : QMNA #
+df_QMNAlist = prepare(df_data, colnamegroup=c('code'))
 
-fMNA = function (X) {
-    # prendre un paquet de 1 ans et faire la moyenne par mois et retourner le minimum des debit 
-    dpm = length(X)/12
-    # print(dpm)
-    # print(length(X))
-    monthmean = c()
-    for (i in 1:12) {
-        id = round(dpm*(i-1)+1, 0)
-        iu = round(i*dpm, 0)
-        monthmean = append(monthmean, mean(X[id:iu], na.rm=TRUE))
-        # print(paste('start', id))
-        # print(paste('end', iu))
-        # print('')
-    }
-    # print(monthmean)
-    return (min(monthmean, na.rm=TRUE))
-}
+### /!\ PLUS RAPIDE ###
+# fMNA = function (X) {
+#     # prendre un paquet de 1 ans et faire la moyenne par mois et retourner le minimum des debit 
+#     dpm = length(X)/12
+#     # print(dpm)
+#     # print(length(X))
+#     monthmean = c()
+#     for (i in 1:12) {
+#         id = round(dpm*(i-1)+1, 0)
+#         iu = round(i*dpm, 0)
+#         monthmean = append(monthmean, mean(X[id:iu], na.rm=TRUE))
+#         # print(paste('start', id))
+#         # print(paste('end', iu))
+#         # print('')
+#     }
+#     # print(monthmean)
+#     return (min(monthmean, na.rm=TRUE))
+# }
+# df_QMNAEx = extract.Var(data.station=df_QMNAlist,
+#                         funct=fMNA,
+#                         period=period,
+#                         pos.datetime=1)#,
+                        # na.rm=TRUE) ### /!\ PAS COMPRIS ###
 
-df_QMNAlist = prepare(df_data, colnamegroup=c('code'))
+df_QMNAEx = extract.Var(data.station=df_QMNAlist,
+                        funct=mean,
+                        period=period,
+                        timestep='month',
+                        pos.datetime=1,
+                        na.rm=TRUE)
+
+### /!\ NOM DE COLONNE PAS CONSERVER ###
+df_QMNAlist = reprepare(df_QMNAEx, df_QMNAlist, colnamegroup=c('code'))
 
 df_QMNAEx = extract.Var(data.station=df_QMNAlist,
-                        funct=fMNA,
+                        funct=min,
                         period=period,
-                        pos.datetime=1)#,
-                        # na.rm=TRUE) ### /!\ PAS COMPRIS ###
+                        timestep='year',
+                        pos.datetime=1,
+                        na.rm=TRUE)
 
 df_QMNATrend = Estimate.stats(data.extract=df_QMNAEx)
 df_QMNATrend = clean(df_QMNATrend, df_QMNAlist)