[Filtre : smut] Le corps du message de DiedrichSchmidt correspondait à "cum", le tableau "discussions".
Sujet du message : Re : Comment utiliser JSL pour économiser le T² de la plate-forme PCA (ou comment le calculer)
Corps du message :
Salut @Mark_Bailey ,
Merci pour vos commentaires et notamment le JSL du développeur de la plate-forme. Eh bien, il s'avère que la solution à ce que je cherchais (option 1) est effectivement possible avec JSL !! Et tellement plus simple aussi. J'avais juste besoin de le voir dans le code que vous avez envoyé. La partie critique est ici :
Outlier Analysis( 1, Number of Components( N ), Save T Square ),
En modifiant "N" dans l'entrée Nombre de composants et en ajoutant le carré Enregistrer T, cela enregistrera en fait la formule T² dans le tableau de données pour les composants N que vous définissez. Je ne savais pas que dans l'appel Outlier Analysis(), vous pouviez lui envoyer la demande à "Save T Square". Faire cela avec les composants N fait exactement ce que j'espérais faire, merci pour l'aide! Pas besoin de mettre une Wish List ou quoi que ce soit, JMP peut déjà le faire pour vous !
Je joins la table de données Iris_mod.jmp avec des scripts pour calculer la valeur T² pour 2, 3 et 4 PC. Il est bon de savoir comment calculer efficacement la valeur T² en cas de besoin. Le code que j'étais en train d'écrire maintenant pour faire le calcul était plutôt long et fastidieux, même si je pense que cela aurait fonctionné une fois que tout aurait été réglé. Cependant, je préfère la solution ci-dessus - ce ne sont que quelques caractères de code supplémentaires !
En examinant de plus près le code que vous avez envoyé, j'ai remarqué que le T² calculé à partir de la plateforme PCA et le calcul "manuel" dans le code sont différents pour le même nombre de PC. Une idée de pourquoi? Soit le calcul "manuel" est "erroné" ou effectué différemment de la façon dont le PCA le fait, soit quelque chose d'autre se passe. Je joins également une autre table de données Iris_mod_different_T2.jmp qui montre que les résultats T² pour le même nombre de PC sont différents de la plate-forme PCA et du calcul "manuel". Jusqu'à nouvel ordre, je préfère utiliser la formule T² de la plateforme PCA. J'aimerais savoir s'il y avait quelque chose de différent dans le calcul "manuel" et pourquoi les valeurs ne sont pas les mêmes.
Merci encore!,
DS
PS Si quelqu'un est intéressé, le code sur lequel j'ai travaillé est ci-dessous. Il s'agit d'un code interactif qui permet à l'utilisateur de sélectionner les colonnes sur lesquelles effectuer l'ACP puis de sélectionner dynamiquement le nombre de PC à utiliser pour extraire les formules DModX et T². Vous pouvez même enregistrer le nombre sélectionné de PC dans le tableau de données si vous le souhaitez pour d'autres analyses.
Un grand merci à @jthi pour obtenir de l'aide sur d'autres aspects de ce code afin que les choses fonctionnent comme prévu, comme <
Names Default To Here( 1 );
//Clear Symbols();
//Function to choose the data table to model
choose_data_table = Function( {},
list = {};
For( i = 1, i <= N Table(), i++,
list[i] = Data Table( i ) << get name
);
win = New Window( "Select a data table",
<<MODAL></MODAL> PCRptOutlier << Save DModX( N_PCs );
If( savePCs == 1,
PCRptOutlier << Save Principal Components( N_PCs )
);
PCRptOutlier<<CLOSEWINDOW> 0, Try( choose_data_table, Throw( "No data found" ) )
);
ModMetrics;
);
Firstwin;</CLOSEWINDOW>
Le corps du texte "Cum" correspondait au modèle de filtre "cum".
La publication de l'utilisateur[id=12549,login=DiedrichSchmidt] a été rejetée pour les erreurs suivantes rencontrées par l'utilisateur final :
- Votre message a été modifié car un code HTML invalide a été trouvé dans le corps du message. Le code HTML invalide a été supprimé. Veuillez lire le message et soumettre le message lorsque vous êtes satisfait.