PCA + analyse de clustering pour les données spectralesBonjour!
Je me demandais si quelqu'un pouvait m'aider sur les étapes à suivre pour effectuer une analyse PCA + clustering des données spectrales ?
J'ai déjà normalisé toutes mes données spectrales (intensités). J'ai des échantillons qui varient en termes de composition et chacun d'eux passe ensuite par différentes étapes de traitement. J'espère que les techniques multivariées pourront m'aider en discutant de ce qui est le mieux (étape de composition ou de traitement) en termes de regroupement d'échantillons.
Si cela peut être utile, j'ai joint une version courte de mes données.
Merci d'avance!!
Marianne
Modélisation statistique avancéeRé: PCA + analyse de clustering pour les données spectralesSalut @Mariana_Aguilar ,
Je vois au moins 2 options pour explorer votre jeu de données de courbes (une avec JMP, la seconde avec JMP Pro) :
- Avec JMP : Vous pouvez utiliser la plateforme Fit Curve avec un format de données empilées, en définissant "Intensity normalisé" comme Y, "Wavelength (nm)" comme X et "Sample" comme By variables. Ensuite, vous pouvez ajuster un Skew Normal Peak (disponible dans Peak models dans le triangle rouge) à vos 4 échantillons, et extraire les paramètres de courbes ajustées : Location , Scale , Skew et Peak value (clic droit sur le tableau "Parameter Estimates" et cliquer sur "Make combined datatable"). Un nouveau tableau s'ouvre dans un format de pile.
Vous pouvez diviser ce tableau et utiliser les estimations de paramètres dans la plateforme PCA, pour évaluer dans quelle mesure les deux processus et leur composition sont similaires/différents :

La majeure partie de la variation semble provenir du processus, la première composante principale étant responsable d’environ 95 % de la variation des valeurs des paramètres et liée au processus.
Le clustering hiérarchique vous montrerait également que la plus grande différence entre les échantillons pourrait être liée à une différence de processus (pasteurisation vs. dispersion, première division dans le clustering) :

-
Avec JMP Pro : vous pouvez utiliser l' explorateur de données fonctionnelles avec un format de données empilées, en définissant « Intensité normalisée » comme Y, Sortie, « Longueur d'onde (nm) » comme X, Entrée et « Échantillon » comme ID, Variables de fonction.
Vous pouvez ensuite ajuster un modèle B-Spline à vos données de courbe, et un modèle cubique avec 17 splines devrait bien fonctionner :
Vous pouvez ensuite regarder directement le graphique Score pour visualiser vos échantillons avec une ou deux composantes principales fonctionnelles :
Vous verrez une fois de plus que le processus semble être la plus grande différence dans les profils de courbe de votre échantillon (correspondant au FPC1 responsable de 99,8 % de la variation des données de courbe).
Cette conclusion sur l'importance du processus peut également être facilement visualisée via Graph Builder (les deux ID d'échantillons sont très similaires, mais le changement de courbe peut être principalement imputé aux différences de processus) :

Veuillez trouver des scripts pour suivre l'analyse décrite ici dans le tableau de données ci-joint.
J'espère que ces deux solutions pourront vous aider,
Ré: PCA + analyse de clustering pour les données spectralesSalut @Mariana_Aguilar ,
Je vous suggère de jeter un œil aux ressources suivantes dans Analyse multivariée pour les données spectrales de @Bill_Worley , elles vous permettront de bien comprendre les outils pertinents dans JMP pour vous aider :
https://www.jmp.com/en_be/articles/analyzing-spectral-data-multivariate-methods.html
https://community.jmp.com/t5/Mastering-JMP/Building-Predictive-Models-for-Corrated-and-High-Dimensional/ta-p/618888
https://community.jmp.com/t5/Discovery-Summit-Americas-2020/Using-Multivariate-Tools-in-JMP-for-Analysis-of-Spectral-Data/ta-p/281561
Merci,
Ben
Ré: PCA + analyse de clustering pour les données spectralesBonjour Victor, merci pour votre réponse aimable et complète.
J'ai encore quelques questions si ça ne te dérange pas...
1. Pour la première option (en utilisant le menu Ajuster la courbe), je n'arrive pas à trouver les pics normaux obliques sous le menu Modèles de pics. J'ai essayé avec Gaussian (vert) mais au moins visuellement, cela ne semble pas être un bon ajustement. J'ai ensuite essayé avec ExGaussian qui semble meilleur, mais je ne suis pas sûr que j'introduirais plus de complexité dans mes paramètres de courbe ajustée ?


Et ma deuxième question concerne la deuxième option.
Depuis la plateforme Functional Data Explorer, savez-vous comment puis-je sauvegarder les composants principaux obtenus afin de pouvoir procéder au clustering hiérarchique ? (ou s'il existe une autre option au sein de la plateforme pour passer au clustering ?)
Merci beaucoup!
Marianne
Ré: PCA + analyse de clustering pour les données spectralesOh, encore un doute si je peux me permettre !
Dans la plateforme d'exploration de données fonctionnelles, quelle est la différence entre l'utilisation de B-Spline pour prétraiter les données en premier et l'utilisation directe de Direct Functional PCA dans le menu des modèles (sous le triangle rouge) :

merci!
Ré: PCA + analyse de clustering pour les données spectralesSalut @Mariana_Aguilar ,
Concernant vos questions :
- Je pense que ce nouveau type de modèle « Skew Normal Peak » n'a été introduit que dans JMP 18, donc si vous travaillez avec JMP 17, vous n'aurez accès qu'aux trois choix que vous avez mentionnés : Options d'ajustement de la courbe
Si vous ne pouvez pas utiliser JMP 18 pour le moment, je pense qu'ExGaussian pourrait être une option de modélisation plus adaptée, car il semble que vos pics soient un peu biaisés. Le modèle de pic gaussien est plus approprié si vous avez un pic gaussien symétrique.
Je ne comprends pas comment ExGaussian pourrait ajouter plus de « complexité » au modèle, car il n'y aura qu'une différence d'un seul paramètre dans la complexité du modèle entre ExGaussian et Gaussian. En regardant les critères d'information AICc et BIC, vous pouvez voir que l'ajout d'un paramètre améliore la modélisation, il y a un meilleur équilibre entre l'ajustement du modèle et la complexité du modèle (plus le critère d'information AICc/BIC est bas, mieux c'est).
- Dans la plateforme Functional Data Explorer, vous pouvez sauvegarder les composants principaux fonctionnels : allez dans le panneau « Résumés de fonctions », cliquez sur le triangle rouge, et à partir de là, vous pouvez personnaliser et sauvegarder les résumés de fonctions et les FPC :

Vous pouvez visualiser directement vos échantillons dans un graphique 2D avec les FPC en regardant le graphique Score :

J'espère que ces réponses complémentaires vous aideront,
Ré: PCA + analyse de clustering pour les données spectralesSalut @Mariana_Aguilar ,
La différence réside dans la manière dont les données sont utilisées et prétraitées comme vous le mentionnez : avec une B-Spline ou une P-Spline, vous utilisez d'abord un modèle qui correspond à vos données de courbes brutes, puis vous pouvez calculer les composantes principales fonctionnelles basées sur ce modèle (approximation).
Avec des modèles directs comme l'ACP fonctionnelle directe, vous effectuez directement une décomposition en valeurs singulières (SVD) sur vos données brutes pour extraire les valeurs propres et les fonctions propres. Plus d'informations ici : Types d'ajustements de modèles fonctionnels
Pour déterminer quelle serait l'option appropriée, vous pouvez adapter différents modèles et les évaluer en fonction de mesures statistiques (comme les critères d'information AICc et BIC), et avec les visualisations des tracés de diagnostic pour évaluer l'adéquation/précision du modèle. Dans votre cas, il semble que l'application de B-Splines avant d'extraire les composantes principales fonctionnelles avec vos données de courbes soit une bonne option, car les résidus des modèles sont très faibles et homogènes, contrairement à ceux de l'ACP fonctionnelle directe :
Diagrammes de diagnostic pour les B-Splines :

Diagrammes de diagnostic pour Direct FPCA :

J'espère que cette réponse vous aidera,
Ré: PCA + analyse de clustering pour les données spectralesMerci Victor !