J'essaie de diviser DT-2 (ci-joint) : « Diviser par : marqueur », « Diviser les colonnes : résultats ». Je souhaite conserver toutes les colonnes restantes.
Le problème que je rencontre est que certains marqueurs ont plus de lignes que d'autres. Ainsi, lorsque je divise, le « Lot » suivant est combiné pour combler les autres marqueurs dont le nombre est inférieur au maximum du tableau.
Par exemple, il ne devrait y avoir que 3 valeurs pour CD19+ pour le lot 7587082, mais après la division, il en affiche 6, absorbant les valeurs du lot suivant, 7587083.
Comment faire fonctionner cela correctement ? Ai-je raté quelque chose ? Idéalement, j'aimerais que ce soit dans un script… qui ressemble actuellement à ceci (le script n'est pas affiché dans son intégralité, juste la séparation) :
dt3 = dt2 << Split( Split By( :Marker ), Split( :Results ));
Toute aide sera grandement appréciée !!!
Je suppose que je ne comprends pas pourquoi si vous sélectionnez les options de conservation des colonnes, les colonnes conservées seront remplies avec des données permutées qui ne correspondent pas correctement aux données fractionnées des lignes d'origine de la table d'origine. Dans quelle situation possible ce comportement par défaut serait-il utile ?
Par exemple, pourquoi ne pas parcourir la table d'origine ligne par ligne et après la scission, générer une nouvelle table avec une ligne correspondante pour chaque ligne d'origine, mais uniquement avec la colonne sélectionnée divisée.
La façon dont il se comporte pour moi est que pendant qu'il fait le fractionnement, il se retrouve avec des données permutées dans les colonnes conservées.
La seule façon de conserver les données correctement associées ligne par ligne est d'inclure toutes les colonnes conservées dans le regroupement.
J'aimerais télécharger une table de données ici à titre d'exemple, mais évidemment, mon entreprise ne nous permet pas de partager les données privées.
*edit : j'ai recodé le tableau, je vais donc le télécharger ici.
Ce tableau comporte les colonnes A à G.
Je souhaite diviser Col G par Col B tout en conservant toutes les étiquettes de la colonne A, C, D, E correctement associées aux données correspondantes dans la colonne fractionnée G.
L'exécution du script suivant génère une table désordonnée avec les entrées de la colonne A, C, D, E ne correspondant pas à leurs valeurs relatives de la colonne fractionnée G.
Data Table( "example-table" ) << Split( Split By( :B ), Split( :G ) )
Cela génère un résultat correct, je pense:
Data Table( "example-table" ) << Split(
Split By( :B ),
Split( :G ),
Group( :A, :C, :D, :E ),
Sort by Column Property
)
Mais je ne comprends toujours pas pourquoi quelque chose doit être regroupé en premier lieu :
Si j'exécute le script suivant, cela me montre que la table d'origine n'a qu'une seule ligne pour une combinaison donnée de A, B, C, D, E, donc aucun regroupement ne devrait être requis, n'est-ce pas?
Data Table( "example-table" ) << Summary(
Group( :A, :C, :D, :E, :B ),
Freq( "None" ),
Weight( "None" )
)
La Split Platform est une plateforme générique.Il ne lit aucune information de la table de données, quant au regroupement, etc.Il nécessite que l'utilisateur remplisse les colonnes Fractionner par, Fractionner les colonnes et Groupe.
Je voudrais relancer cette vieille question.
Pouvez-vous s'il vous plaît expliquer pourquoi ce comportement se produit?
J'ai rencontré le même problème et il est contre-intuitif pour moi pourquoi vous devez regrouper certaines variables au lieu que JMP le fasse automatiquement lorsque vous conservez les colonnes?
Cela l'a fait. Merci txnelson !
Groupe( :Numéro de lot, :Instrument )