Comment convertir 3 colonnes en une seule table@martindemel
Salut tout le monde,
Je vous contacte pour obtenir de l'aide sur un problème de traitement des données. Il y a quelque temps, je pouvais convertir 3 colonnes (charge pH, charge NaCl, % de protéines dans Load Wash) en un seul tableau : comme c'était très utile, j'aimerais faire la même chose avec une nouvelle expérience. Malheureusement, je ne me souviens pas comment je faisais auparavant. Vous pouvez consulter les captures d'écran ci-jointes pour mieux comprendre ce que je souhaite obtenir.
J'utilise JMP 17.0.0.
Merci beaucoup d'avance!
Données originales :

Tableau obtenu :

Analyse et modélisation des données de baseExploration et visualisation des donnéesRe : Comment convertir 3 colonnes en une seule tableVos exemples de données ne sont pas sous une forme lisible. Veuillez joindre une copie de vos données originales pour vous aider à répondre à votre problème.
Re : Comment convertir 3 colonnes en une seule tableDans « Tableaux », sélectionnez « Résumé »
Ensuite, définissez comme indiqué dans la capture d'écran
Statistiques - Moyenne (% de protéines)
Groupe - charge NaCl
Sous-groupe - pH de charge
Je pense que cela devrait donner le format que vous recherchez.
Re : Comment convertir 3 colonnes en une seule tableMerci pour votre réponse!
Cela fonctionnerait comme ceci, mais je ne peux pas transférer le dégradé de couleurs (configuré dans la colonne d'informations) vers le tableau.
Je suis presque sûr d'avoir utilisé une manière différente pour obtenir ce tableau la dernière fois mais je ne me souviens pas comment.
Re : Comment convertir 3 colonnes en une seule tablePar exemple ici, j'aimerais avoir les différentes valeurs de pH en haut, les valeurs de NaCl à droite et les valeurs "proportion contraignante" dans le tableau.
Re : Comment convertir 3 colonnes en une seule tableDe plus, la dernière fois, le dégradé de couleurs a été directement transféré dans le tableau. Ce qui n'est pas le cas lorsque j'utilise la fonctionnalité "Tableaux > Résumé".
Re : Comment convertir 3 colonnes en une seule tableVoici un script simple qui transforme les données

Names Default To Here( 1 );
dt = Current Data Table();
// Use Tabulate to create the transformed table
(tab = dt << Tabulate(
Change Item Label( Statistics( Mean, " " ) ),
Remove Column Label( Analysis Columns( Binding proportion ) ),
Add Table(
Column Table( Grouping Columns( :pH ), Statistics( Mean ), Analysis Columns( :Binding proportion ) ),
Row Table( Grouping Columns( :"[NaCl]"n ) )
)
)) << Make Into Data Table;
Current Data Table() << set name( "Final" );
dtFinal = Current Data Table();
Report( tab ) << close window;
// change column names and set the Value Colors
valColors = dt:Binding proportion << get property("Value Colors");
For( i = 2, i <= N Cols( dtFinal ), i++,
Column( dtFinal, i ) << set name( Word( -1, Trim( Column( dtFinal, i ) << get name ), "()," ) );
Column( dtFinal, i ) << set property("Value Colors", eval(valColors));
Column(dtFinal,i)<<COLOR cell="" by="" value=""></COLOR>
S'il vous plaît, ne vous contentez pas de copier-coller ce code, sans prendre le temps de l'étudier et d'apprendre ce qu'il fait.
Re : Comment convertir 3 colonnes en une seule tableMerci beaucoup!
Je comprends chaque ligne mais je ne sais pas où écrire dans le thème de couleur. Je souhaite utiliser le dégradé "Yellow Green Red" j'ai donc essayé de remplacer "valColors" à la ligne 22 par "Yellow Greed Red" mais ce n'est pas ça.
Et lorsque j'exécute le script sans rien changer, ce message d'erreur s'affiche :

Re : Comment convertir 3 colonnes en une seule tableLe script que j'ai fourni était basé sur la définition de la propriété de colonne "Couleurs de la valeur".Apparemment, votre table de données de départ ne les a pas définis.
J'ai modifié le JSL pour utiliser la propriété de colonne "Couleurs dégradées".J'ai également modifié le code pour définir le "Dégradé de couleurs" sur la table de données initiale, de sorte qu'il garantit désormais que lors de la création de la nouvelle table de données, elle dispose de ce dont elle a besoin pour définir les couleurs des cellules.
Names Default To Here( 1 );
dt = Current Data Table();
// Set the color gradient column property
dt:binding proportion << set property("color gradient", {"Green Yellow Red"(1), Range( {6.2, 87.38, 25.6941666666667} )});
dt:binding proportion<<COLOR cell="" by="" value=""></COLOR>Re : Comment convertir 3 colonnes en une seule tableParfait, merci beaucoup !