Mise en forme conditionnelle par état de ligne de différentes colonnes.Bonne journée,
J'ai 1,7 million de lignes de données liées à des identifiants communs. Je peux en formater des parties plus petites dans Excel, mais avec la taille du fichier (supérieure à la limite Excel) et la nécessité de reproduire des ensembles de données similaires, j'aimerais comprendre comment coder les données dans JMP.
---
La colonne A (FID) est une série de numéros d'identification de poisson (1,2,3…) avec un nombre variable de lectures qui remplissent la colonne B (Heure). Chaque lecture de la colonne B correspond à un intervalle de 20 secondes.
La colonne B commence à diverses lectures > 28 000 en raison de l'horodatage précédent auquel elles étaient associées.Je souhaite que la première lecture de chaque FID commence à 0 puis augmente de 20 pour chaque ligne associée à ce FID.Donc C2 sera égal à 0 seconde, C3 durera 20 secondes, C4 durera 40 secondes, et ainsi de suite jusqu'à ce que nous arrivions à FID = 2, puis il se réinitialisera et commencera à le compter à 0, 20, 40, 60.
Dans Excel, comme vu ci-dessous, je peux définir la première ligne d'une nouvelle colonne sur "0" puis appliquer la formule : =IF(A4=A3,C3+20,0)
Lorsque j'essaie d'appliquer une logique similaire à la formule conditionnelle dans JMP, je n'arrive pas à comprendre comment lui faire reconnaître la valeur de chaque ligne et l'ajuster. Il s'agit probablement d'une différence fondamentale entre les packages de traitement de données comme Excel et les packages statistiques comme JMP, mais JMP est mon logiciel d'analyse préféré et la taille des fichiers de données l'exige. J'utilise la version 16, JMP.
Toutes les pensées sont appréciées. Un extrait des données est joint à des fins de pratique.

Automatisation et scriptsAnalyse et modélisation des données de baseMélange et nettoyage des donnéesRe : Mise en forme conditionnelle par état de ligne de différentes colonnes.@GregF_JMP & @txnelson Merci à vous deux pour votre soutien rapide et votre perspicacité.
Je le fais fonctionner maintenant et je progresse dans l'analyse. Je suis resté coincé là-dessus pendant quatre heures. J'apprécie vraiment votre aide.
Greg, votre jeu de mots "analyse en aval" est noté et apprécié puisqu'il s'agit de données sur les poissons... 
Re : Mise en forme conditionnelle par état de ligne de différentes colonnes.Bonjour,
Il semble que vous commenciez avec une table triée, donc cela devrait se passer à merveille.Vous pourrez le faire avec une formule de colonne pour une colonne que nous appellerons "New_Time", mais sachez que contrairement à Excel, où la première ligne peut être manuellement définie sur zéro, JMP exige que toutes les formules d'une colonne soient identiques.La fonction Lag sera utile dans ce cas et se comportera comme une référence relative Excel à la ligne ci-dessus.
L'image graphique de l'éditeur de formule pour une colonne appelée "New_Time" est présentée ci-dessous.

Celui-ci est décrit :
Si la ligne actuelle est == 1, OU si la valeur actuelle de FID est différente du décalage précédent (FID,1), alors le "temps" de la ligne actuelle est zéro (réinitialisé).Sinon, ajoutez 20 à la valeur précédente de la colonne New_Time (la cellule ci-dessus).
J'ai également inclus le JSL, qui peut être copié dans l'éditeur de formules par un double-clic en mode JSL.
If( Row() == 1 | :FID != Lag( :FID, 1 ),
0,
Lag( :New_Time, 1 ) + 20
)
Notez que les opérateurs de comparaison JMP sont doubles égaux (vs Excel simple), et que les opérateurs non égaux dans JMP sont != (vs Excel <>).
Bonne chance avec cette étape de préparation des données, j'espère que la formule de colonne permettra toute l'analyse en aval.
-G
Re : Mise en forme conditionnelle par état de ligne de différentes colonnes.La formule à utiliser est
Col Cumulative Sum( 20, :FID ) - 20
La soustraction de 20 est due au fait que la somme cumulée du col commencera à 20
