Comment filtrer les données en fonction du temps et prendre la moyenne à l'aide de JSL ?J'ai des données capturées pendant une durée particulière. Veuillez trouver ci-dessous un instantané du tableau (ci-joint) :
| Horodatage | A | B | C |
| 0,001 | 10.005 | 450.4451 | 428.9093 |
| 0,002 | 10.01 | 450.8904 | 429.0295 |
| 0,003 | 10.015 | 451.336 | 429.0177 |
| 0,004 | 10.02 | 451.7818 | 428.9279 |
| 0,005 | 10.025 | 452.2278 | 428.8491 |
Le tracé de la colonne C ressemble à ci-dessous :

Je dois filtrer les lignes des sections1, 2 et 3 et trouver leur moyenne.
Chaque section dure 30 secondes, calculée à partir de la colonne d'horodatage et il y a un intervalle de 20 secondes entre chaque section.
Le tableau des résultats finaux devrait être le suivant :
| Section | moyenne(A) | moyenne(B) | moyenne(C) |
| 1 | 10.005 | 450.4451 | 428.9093 |
| 2 | 10.01 | 450.8904 | 429.0295 |
| 3 | 10.015 | 451.336 | 429.0177 |
Pourriez-vous s'il vous plaît nous indiquer comment filtrer les lignes des sections 1, 2 et 3 et trouver leur moyenne à l'aide d'un script.
Ingénierie Qualité et ProcédésRe : Comment filtrer les données en fonction du temps et prendre la moyenne à l'aide de JSL ?Merci beaucoup de m'avoir guidé vers les bonnes ressources, je vais certainement lire la documentation.Re : Comment filtrer les données en fonction du temps et prendre la moyenne à l'aide de JSL ?Dans l'exemple que j'ai fourni, la colonne Section a été créée en tant que colonne numérique.Les valeurs des colonnes numériques doivent être des nombres valides.Cependant, il est simple de faire de la colonne une colonne de caractères, puis les valeurs de Section peuvent être tout ce que vous voulez.
names default to here(1);
dt=current data table();
dt << new column("Section",
ordinal,character,
formula(
If( 0 <= :TimeStamp <= 30,
"Interval_1",
50 <= :TimeStamp <= 80,
"Interval_2",
100 <= :TimeStamp <= 130,
"Interval_3"
)
)
);
Je vous suggère fortement de prendre le temps de lire les documents Découvrir JMP et Utiliser JMP de la bibliothèque de documentation JMP disponible dans le menu déroulant Aide
Re : Comment filtrer les données en fonction du temps et prendre la moyenne à l'aide de JSL ?Est-il possible de donner des noms significatifs à chaque section au lieu de 1, 2 et 3. Par exemple, pouvons-nous le nommer comme interval_1, interval_2 etc.
J'ai essayé ceci mais le code ne s'exécute pas lorsque je l'essaie
Re : Comment filtrer les données en fonction du temps et prendre la moyenne à l'aide de JSL ?Voici comment je procéderais.Il ne correspond pas à vos résultats, mais il suit les instructions que vous avez indiquées, en calculant la section en fonction des valeurs TimeStamp de 0-30 = Section 1, 50-80 = Section 2, 100-130 = Section 3

names default to here(1);
dt=current data table();
dt << new column("Section",
ordinal,
formula(
If( 0 <= :TimeStamp <= 30,
1,
50 <= :TimeStamp <= 80,
2,
100 <= :TimeStamp <= 130,
3
)
)
);
dt << Summary(
Group( :Section ),
Mean( :A ),
Mean( :B ),
Mean( :C ),
Freq( "None" ),
Weight( "None" ),
Link to original data table( 0 )
);