Problème de tableau de données fractionnéJ'ai quelques difficultés à diviser les tables et à conserver les données regroupées correctement. Voici un exemple de données :
| V1 | I1 | Nombre de tests | Nom de balayage |
| 0 | 0 | 1 | Avant |
| 0,1 | 0,1 | 1 | Avant |
| 0,2 | 0,2 | 1 | Avant |
| 0,3 | 0,3 | 1 | Avant |
| 0,4 | 0,4 | 1 | Avant |
| 0,5 | 0,5 | 1 | Avant |
| 0,6 | 0,6 | 1 | Avant |
| 0,7 | 0,7 | 1 | Avant |
| 0,8 | 0,8 | 1 | Avant |
| 0,9 | 0,9 | 1 | Avant |
| 1 | 1 | 1 | Avant |
| 1.1 | 1.1 | 1 | Avant |
| 1.2 | 1.2 | 1 | Avant |
| 0 | 0 | 2 | Avant |
| 0,1 | 0,1 | 2 | Avant |
| 0,2 | 0,2 | 2 | Avant |
| 0,3 | 0,3 | 2 | Avant |
| 0,4 | 0,4 | 2 | Avant |
| 0,5 | 0,5 | 2 | Avant |
| 0,6 | 0,6 | 2 | Avant |
| 0,7 | 0,7 | 2 | Avant |
| 0,8 | 0,8 | 2 | Avant |
| 0,9 | 0,9 | 2 | Avant |
| 1 | 1 | 2 | Avant |
| 1.1 | 1.1 | 2 | Avant |
| 1.2 | 1.2 | 2 | Avant |
| 0 | 0 | 1 | Inverse |
| 0,1 | -0,1 | 1 | Inverse |
| 0,2 | -0,2 | 1 | Inverse |
| 0,3 | -0,3 | 1 | Inverse |
| 0,4 | -0,4 | 1 | Inverse |
| 0,5 | -0,5 | 1 | Inverse |
| 0 | 0 | 2 | Inverse |
| 0,1 | -0,1 | 2 | Inverse |
| 0,2 | -0,2 | 2 | Inverse |
| 0,3 | -0,3 | 2 | Inverse |
| 0,4 | -0,4 | 2 | Inverse |
| 0,5 | -0,5 | 2 | Inverse |
| 0,6 | -0,6 | 2 | Inverse |
| 0,7 | -0,7 | 2 | Inverse |
| 0,8 | -0,8 | 2 | Inverse |
Quand j'ai partagé la table...
dt << Split(
Split By( :Sweep Name ),
Split( :V1, :I1 ),
Output Table( "Split Table" ),
Sort by Column Property
J'obtiens le tableau suivant :
| Nombre de tests | V1 avant | V1 Inverser | I1 Avant | I1 Inverse |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 0,1 | 0,1 | 0,1 | -0,1 |
| 1 | 0,2 | 0,2 | 0,2 | -0,2 |
| 1 | 0,3 | 0,3 | 0,3 | -0,3 |
| 1 | 0,4 | 0,4 | 0,4 | -0,4 |
| 1 | 0,5 | 0,5 | 0,5 | -0,5 |
| 1 | 0,6 | 0 | 0,6 | 0 |
| 1 | 0,7 | 0,1 | 0,7 | -0,1 |
| 1 | 0,8 | 0,2 | 0,8 | -0,2 |
| 1 | 0,9 | 0,3 | 0,9 | -0,3 |
| 1 | 1 | 0,4 | 1 | -0,4 |
| 1 | 1.1 | 0,5 | 1.1 | -0,5 |
| 1 | 1.2 | 0,6 | 1.2 | -0,6 |
| 2 | 0 | 0,7 | 0 | -0,7 |
| 2 | 0,1 | 0,8 | 0,1 | -0,8 |
| 2 | 0,2 | | 0,2 | |
| 2 | 0,3 | | 0,3 | |
| 2 | 0,4 | | 0,4 | |
| 2 | 0,5 | | 0,5 | |
| 2 | 0,6 | | 0,6 | |
| 2 | 0,7 | | 0,7 | |
| 2 | 0,8 | | 0,8 | |
| 2 | 0,9 | | 0,9 | |
| 2 | 1 | | 1 | |
| 2 | 1.1 | | 1.1 | |
| 2 | 1.2 | | 1.2 | |
JMP finit par aligner le nombre de tests de manière incorrecte pour toutes les données inversées, car le nombre de points de données n'est pas nécessairement égal entre tous les tests.
Ce que je veux c'est ceci :
| Nombre de tests | V1 Avant | V1 Inverser | I1 Avant | I1 Inverse |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 0,1 | 0,1 | 0,1 | -0,1 |
| 1 | 0,2 | 0,2 | 0,2 | -0,2 |
| 1 | 0,3 | 0,3 | 0,3 | -0,3 |
| 1 | 0,4 | 0,4 | 0,4 | -0,4 |
| 1 | 0,5 | 0,5 | 0,5 | -0,5 |
| 1 | 0,6 | | 0,6 | |
| 1 | 0,7 | | 0,7 | |
| 1 | 0,8 | | 0,8 | |
| 1 | 0,9 | | 0,9 | |
| 1 | 1 | | 1 | |
| 1 | 1.1 | | 1.1 | |
| 1 | 1.2 | | 1.2 | |
| 2 | 0 | 0 | 0 | 0 |
| 2 | 0,1 | 0,1 | 0,1 | -0,1 |
| 2 | 0,2 | 0,2 | 0,2 | -0,2 |
| 2 | 0,3 | 0,3 | 0,3 | -0,3 |
| 2 | 0,4 | 0,4 | 0,4 | -0,4 |
| 2 | 0,5 | 0,5 | 0,5 | -0,5 |
| 2 | 0,6 | 0,6 | 0,6 | -0,6 |
| 2 | 0,7 | 0,7 | 0,7 | -0,7 |
| 2 | 0,8 | 0,8 | 0,8 | -0,8 |
| 2 | 0,9 | | 0,9 | |
| 2 | 1 | | 1 | |
| 2 | 1.1 | | 1.1 | |
| 2 | 1.2 | | 1.2 | |
J'ai joué avec l'option de groupe avec une table de données fractionnée, mais il semble toujours perdre des données. Par exemple, si je regroupe par nombre de tests, cela ne me donne qu'une seule ligne par nombre de tests et semble choisir la dernière valeur de ce nombre de tests pour l'avant et l'arrière.
Espérons que tout cela a du sens. Merci d'avance pour l'aide.
Études de consommation et de marchéFusion et nettoyage des donnéesRe : Problème de tableau de données fractionnéC'est très astucieux et fonctionne parfaitement. Merci!
Re : Problème de tableau de données fractionnéSalut
Ma solution comprend deux étapes. Transposer puis Diviser.
Avant le changement de table, je crée un nouveau col nommé "Tag" avec la formule
Current Data Table() << New Column( "Tag",
formula( Col Rank( :Test Count, :Test Count, :Sweep Name ) )
);
Transposer le tableau de données
Current Data Table() << Transpose(
columns( :V1, :I1 ),
By( :Test Count, :Tag ),
Label( :Sweep Name ),
Output Table( "Transpose of Untitled" )
);
Puis diviser en dernière étape
Data Table( "Transpose of Untitled" ) << Split(
Split By( :Label ),
Split( :Forward, :Reverse ),
Sort by Column Property
);
Table finale comme celle-ci

Passe une bonne journée!