X-Git-Url: https://git.auder.net/?p=valse.git;a=blobdiff_plain;f=pkg%2FR%2FEMGrank.R;h=3216870f9b4e288259306a9510051285c1f0bc7b;hp=eaa32464db4662fc03c07e6e1c08d8f5d64ba4ad;hb=567a7c388285ef17ce1e49d295527937dbfadf66;hpb=f87ff0f5116c0c1c59c5608e46563ff0f79e5d43 diff --git a/pkg/R/EMGrank.R b/pkg/R/EMGrank.R index eaa3246..3216870 100644 --- a/pkg/R/EMGrank.R +++ b/pkg/R/EMGrank.R @@ -1 +1,34 @@ -#TODO: wrapper sur fonction C (on a besoin de C pour ça ?!) +#' EMGrank +#' +#' Description de EMGrank +#' +#' @param phiInit ... +#' @param Pi Parametre de proportion +#' @param Rho Parametre initial de variance renormalisé +#' @param mini Nombre minimal d'itérations dans l'algorithme EM +#' @param maxi Nombre maximal d'itérations dans l'algorithme EM +#' @param X Régresseurs +#' @param Y Réponse +#' @param tau Seuil pour accepter la convergence +#' @param rank Vecteur des rangs possibles +#' +#' @return A list ... +#' phi : parametre de moyenne renormalisé, calculé par l'EM +#' LLF : log vraisemblance associé à cet échantillon, pour les valeurs estimées des paramètres +#' +#' @export +EMGrank <- function(Pi, Rho, mini, maxi, X, Y, tau, rank) +{ + #TEMPORARY: use R version + return (EMGrank_R(Pi, Rho, mini, maxi, X, Y, tau, rank)) + + n = nrow(X) #nombre d'echantillons + p = ncol(X) #nombre de covariables + m = ncol(Y) #taille de Y (multivarié) + k = length(Pi) #nombre de composantes dans le mélange + .Call("EMGrank", + Pi, Rho, mini, maxi, X, Y, tau, rank, + phi=double(p*m*k), LLF=double(1), + n, p, m, k, + PACKAGE="valse") +}