Je veux effectuer une analyse factorielle parallèle (PARAFAC) avec des données de la spectroscopie de fluorescence. J'ai un tableau tridimensionnel (39x151x43) que je passe à la fonction parafac dans le paquet "multiway". Jusqu'à présent, cela fonctionne bien mais j'ai des valeurs négatives pour certains composants. J'ai lu dans le manuel que l'on peut spécifier des contraintes pour la non-négativité. Cependant, je ne comprends pas comment le vecteur pour l'option de contraintes devrait ressembler. Lorsque je tente de faire ce qui suit, je reçois une erreur qui dit: « Input « const » doit être 3 vecteur élément spécifiant contrainte pour chaque mode »Comment définir des contraintes pour la non-négativité dans l'analyse factorielle parallèle en utilisant le package multiway dans R?
#### creating dummy values for Stackoverflow ####
A <- c(1:39)
B <- rnorm(151, mean =1, sd=0.5)
C <- rnorm(43, mean=1, sd = 0.5)
myArray <- array(c(A,B,C), dim = c(39,151,43))
dim(myArray)
library(multiway) # load the library
myModel <- parafac(myArray, nfac = 3) # how to set const?
#Input 'const' must be 3 element vector specifying constraint for each mode
Certains google-fu était vain. Comment devrait ressembler le vecteur pour que la fonction parafac l'accepte? Toute aide ou pointant vers la réponse sera grandement appréciée.
S'il vous plaît lire les informations sur [comment poser une bonne question] (http: // stackoverflow .com/help/how-to-ask) et comment donner un [exemple reproductible] (http://stackoverflow.com/questions/5963269). Cela rendra beaucoup plus facile pour les autres de vous aider. – Axeman