From 29efa02528337314d5f1afe851f14f2371c6958a Mon Sep 17 00:00:00 2001 From: Paul-Corbalan <58653590+Paul-Corbalan@users.noreply.github.com> Date: Tue, 10 May 2022 11:30:40 +0200 Subject: [PATCH 1/2] Add tau_scan, tau_H1 in CompareMethods --- Comparaison_of_methods.rmd | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Comparaison_of_methods.rmd b/Comparaison_of_methods.rmd index 92e04d0..9eb4225 100644 --- a/Comparaison_of_methods.rmd +++ b/Comparaison_of_methods.rmd @@ -380,7 +380,7 @@ LocalScoreMC <- function(lambda0, lambda1, NbSeq, T, X_seq, P_X, tbe0){ ## 4. Experience plan for comparaison ```{r} -CompareMethods <- function(lambda0, lambda1, NbSeq, T, tau){ +CompareMethods <- function(lambda0, lambda1, NbSeq, T, tau_scan, tau_H1){ if (lambda0 < lambda1){ cat("For T = ", T, ", Nb = ", NbSeq, ", lambda0 = ", lambda0, " and lambda1 = ", lambda1, ":\n", sep = "") @@ -398,7 +398,7 @@ CompareMethods <- function(lambda0, lambda1, NbSeq, T, tau){ tbe0[[i]] = tbei #Simulation for sequences under H1 - ppj1 = SimulationH1(lambda0, lambda1, T, 3) + ppj1 = SimulationH1(lambda0, lambda1, T, tau_H1) nj = length(ppj1) pp1[[i]] = ppj1 tbej = ppj1[2:nj]-ppj1[1:nj-1] @@ -412,9 +412,9 @@ CompareMethods <- function(lambda0, lambda1, NbSeq, T, tau){ LS_obtained = c(LS_H0$class, LS_H1$class) options(warn = -1) - Emp = EmpDistrib(lambda0,10**4,T,tau) - SS_H0 = ScanStatMC(NbSeq, T, tau, Emp, pp0) - SS_H1 = ScanStatMC(NbSeq, T, tau, Emp, pp1) + # Emp = EmpDistrib(lambda0, 10**4, T, tau_scan) + SS_H0 = ScanStatMC(NbSeq, T, tau_scan, Emp, pp0) + SS_H1 = ScanStatMC(NbSeq, T, tau_scan, Emp, pp1) SS_obtained = c(SS_H0$class, SS_H1$class) From 0054d077be4d9c6752e6e8f9800da8bacf0f4f85 Mon Sep 17 00:00:00 2001 From: Paul-Corbalan <58653590+Paul-Corbalan@users.noreply.github.com> Date: Tue, 10 May 2022 18:45:12 +0200 Subject: [PATCH 2/2] Add NbSeq.NonNulles to LocalScoreMC --- Comparaison_of_methods.rmd | 40 +++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/Comparaison_of_methods.rmd b/Comparaison_of_methods.rmd index 9eb4225..0aaf67c 100644 --- a/Comparaison_of_methods.rmd +++ b/Comparaison_of_methods.rmd @@ -356,24 +356,28 @@ plot_graph_distrib_score(distrib_score_theo, distrib_score_mc) ### 3.2. Local score calculation ```{r} LocalScoreMC <- function(lambda0, lambda1, NbSeq, T, X_seq, P_X, tbe0){ - E = ComputeE(lambda0, lambda1) - - pvalue = c() - X = c() - - min_X = min(X_seq) - max_X = max(X_seq) - - for (i in 1:NbSeq){ - x = floor(E*log(dexp(tbe0[[i]], rate = lambda1)/dexp(tbe0[[i]], rate = lambda0))) - LS = localScoreC(x)$localScore[1] - - daudin_result = daudin(localScore = LS, score_probabilities = P_X, sequence_length = length(x), sequence_min = min_X, sequence_max = max_X) - options(warn = -1) # Disable warnings print - - pvalue = c(pvalue, daudin_result) + E = ComputeE(lambda0, lambda1) + + pvalue = c() + + min_X = min(X_seq) + max_X = max(X_seq) + + NbSeq.NonNulles = 0 + + for (i in 1:NbSeq){ + x = floor(E*log(dexp(tbe0[[i]], rate = lambda1)/dexp(tbe0[[i]], rate = lambda0))) + if (length(x)!=0){ + LS = localScoreC(x)$localScore[1] + + daudin_result = daudin(localScore = LS, score_probabilities = P_X, sequence_length = length(x), sequence_min = min_X, sequence_max = max_X) + options(warn = -1) # Disable warnings print + + pvalue = c(pvalue, daudin_result) + NbSeq.NonNulles = NbSeq.NonNulles + 1 + } } - LS_H0=data.frame(num=1:NbSeq, pvalue_scan=pvalue, class=as.numeric(pvalue<0.05)) + LS_H0=data.frame(num=1:NbSeq.NonNulles, pvalue_scan=pvalue, class=as.numeric(pvalue<0.05)) return(LS_H0) } ``` @@ -451,7 +455,7 @@ CompareMethods <- function(lambda0, lambda1, NbSeq, T, tau_scan, tau_H1){ ``` ```{r} -NbSeq = 10**2 +NbSeq = 10**4 T = 10 tau = 2