Skip to content
Snippets Groups Projects
Commit ca0bda57 authored by Isabelle Sanchez's avatar Isabelle Sanchez
Browse files

simplifie liste parametre d'entrée fonction kafino_fit()

parent 266def85
No related branches found
No related tags found
No related merge requests found
Pipeline #53939 passed
......@@ -32,7 +32,6 @@
#' resu2<-kafino_fit(datain=spring1,
#' Tvar="dateNum",Yvar="Poids",
#' expertMin=30,expertMax=75,
#' Max=100,Min=10,
#' X=c(45,0.5,41),
#' doOptim=FALSE,aa=0.001,sigma2_mm=5*10^-2,K=2)
#'
......
......@@ -15,8 +15,6 @@
#' @param Yvar char, name of the variable to predict in the data.frame datain
#' @param expertMin numeric, the minimal weight expected by the user
#' @param expertMax numeric, the maximal weigth expected by the user
#' @param Max numeric, a max weight for the algorithm, ex 100
#' @param Min numeric, a min weight for the algorithm, ex 10
#' @param X vector, a vector of initialization parameter (to be optimized
#' or not)
#' @param doOptim logical, if TRUE optimisation of the initial parameters
......@@ -56,7 +54,6 @@
#' resu1<-kafino_fit(datain=spring1,
#' Tvar="dateNum",Yvar="Poids",
#' expertMin=30,expertMax=75,
#' Max=100,Min=10,
#' X=c(45,0.5,41),
#' doOptim=TRUE,aa=0.001,sigma2_mm=0.05,K=2)
#' Sys.time() - t0
......@@ -65,7 +62,6 @@
#' resu2<-kafino_fit(datain=spring1,
#' Tvar="dateNum",Yvar="Poids",
#' expertMin=30,expertMax=75,
#' Max=100,Min=10,
#' X=c(45,0.5,41),
#' doOptim=FALSE,aa=0.001,sigma2_mm=0.05,K=2)
#' Sys.time() - t0
......@@ -77,13 +73,12 @@
#' resu3<-kafino_fit(datain=merinos2,
#' Tvar="dateNum",Yvar="Poids",
#' expertMin=10,expertMax=45,
#' Max=100,Min=10,
#' X=c(45,0.5,20),
#' doOptim=TRUE,aa=0.001,sigma2_mm=0.05,K=2)
#' Sys.time() - t0
kafino_fit<-function(datain,Tvar,Yvar,
expertMin,expertMax,
Max,Min,X,
X,
doOptim,threshold=0.5,aa,sigma2_mm,K){
datain<-as.data.frame(datain)
......@@ -103,8 +98,10 @@ kafino_fit<-function(datain,Tvar,Yvar,
Tps<-tp.dt[,Tvar]
#--- function defining an outlier distribution (Surface of a trapezium)
# uses expertMin and expertMax
loi_outlier<-function(y){
2/((K+1)*(Max - Min)) + (2*(K-1)/(K+1))*((y - Min)/((Max - Min)^2))
2/((K+1)*(expertMax - expertMin)) +
(2*(K-1)/(K+1))*((y - expertMin)/((expertMax - expertMin)^2))
}
# les variances de mm, m0 et pp
......@@ -262,8 +259,8 @@ kafino_fit<-function(datain,Tvar,Yvar,
# je calcule 10^N fois Lu et 10^N q. Au total pr chaque donnée
# je multiplie par 100 mais comme c'est l'ordre de grandeur de loioutlier()
# ca ne me parait pas disproportionné.
# Au lieu de 10 et 10 je fais simplement sqrt(Max-Min)
dix=sqrt(Max-Min)
# Au lieu de 10 et 10 je fais simplement sqrt(expertMax - expertMin)
dix=sqrt(expertMax - expertMin)
KBO_vraiss=function(Param){
#notation
......@@ -342,7 +339,7 @@ kafino_fit<-function(datain,Tvar,Yvar,
qnew=rep(0 ,2^(kappa+1))
diffTps<-Tps[k+1] - Tps[k]
#--- numérateur de pu0
tpbeta<-loi_outlier(Y[k+1])#dbeta(Y[k+1]/Max,alpha,beta)
tpbeta<-loi_outlier(Y[k+1])
pnew[1:(2^kappa)]=p[1:(2^kappa)]*(1-pp)*tpbeta
Lnew[1:(2^kappa)]=L[1:(2^kappa)]*tpbeta
mnew[1:(2^kappa)]= m[1:(2^kappa)]*exp(-aa*diffTps) + mm*(1-exp(-aa*diffTps)) #m_u0
......
......@@ -22,7 +22,6 @@ head(spring1)
resu2<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=FALSE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......@@ -39,7 +38,6 @@ kafino_plot(resuin=resu2,typeG="quanti",
resu1<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=TRUE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......@@ -69,7 +67,6 @@ head(merinos1)
resu3<-kafino_fit(datain=merinos1,
Tvar="dateNum",Yvar="Poids",
expertMin=10,expertMax=45,
Max=100,Min=10,
X=c(40,0.5,10),
doOptim=TRUE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......
......@@ -52,7 +52,6 @@ head(spring1)
resu2<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=FALSE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......@@ -71,7 +70,6 @@ kafino_plot(resuin=resu2,typeG="quanti",
resu1<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=TRUE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......@@ -112,7 +110,6 @@ head(merinos1)
resu3<-kafino_fit(datain=merinos1,
Tvar="dateNum",Yvar="Poids",
expertMin=10,expertMax=45,
Max=100,Min=10,
X=c(40,0.5,10),
doOptim=TRUE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......
This diff is collapsed.
......@@ -10,8 +10,6 @@ kafino_fit(
Yvar,
expertMin,
expertMax,
Max,
Min,
X,
doOptim,
threshold = 0.5,
......@@ -32,10 +30,6 @@ Tvar can be expressed as a proportion of day in seconds}
\item{expertMax}{numeric, the maximal weigth expected by the user}
\item{Max}{numeric, a max weight for the algorithm, ex 100}
\item{Min}{numeric, a min weight for the algorithm, ex 10}
\item{X}{vector, a vector of initialization parameter (to be optimized
or not)}
......@@ -82,7 +76,6 @@ t0 <- Sys.time()
resu1<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=TRUE,aa=0.001,sigma2_mm=0.05,K=2)
Sys.time() - t0
......@@ -91,7 +84,6 @@ t0 <- Sys.time()
resu2<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=FALSE,aa=0.001,sigma2_mm=0.05,K=2)
Sys.time() - t0
......@@ -103,7 +95,6 @@ t0 <- Sys.time()
resu3<-kafino_fit(datain=merinos2,
Tvar="dateNum",Yvar="Poids",
expertMin=10,expertMax=45,
Max=100,Min=10,
X=c(45,0.5,20),
doOptim=TRUE,aa=0.001,sigma2_mm=0.05,K=2)
Sys.time() - t0
......
......@@ -45,7 +45,6 @@ print(colnames(spring1))
resu2<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=FALSE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......
......@@ -52,7 +52,6 @@ head(spring1)
resu2<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=FALSE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......@@ -71,7 +70,6 @@ kafino_plot(resuin=resu2,typeG="quanti",
resu1<-kafino_fit(datain=spring1,
Tvar="dateNum",Yvar="Poids",
expertMin=30,expertMax=75,
Max=100,Min=10,
X=c(45,0.5,41),
doOptim=TRUE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......@@ -112,7 +110,6 @@ head(merinos1)
resu3<-kafino_fit(datain=merinos1,
Tvar="dateNum",Yvar="Poids",
expertMin=10,expertMax=45,
Max=100,Min=10,
X=c(40,0.5,10),
doOptim=TRUE,aa=0.001,sigma2_mm=5*10^-2,K=2)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment