remplir les données manquantes avec des conditionsJ'ai un dt qui a des données manquantes que je dois remplir à partir de la même colonne.
le tableau nous indique la couleur de chemise que quelqu'un porte, j'ai un nom, la date à laquelle il a changé de chemise, la prochaine date à laquelle il changera de chemise et la couleur de la chemise.
mon problème est qu'il ne change pas de chemise à chaque fois qu'il met à jour ses données. s'il ne change pas de chemise il écrit "na".
j'ai besoin de changer tous les "na" avec la couleur de la dernière fois qu'il a changé de chemise. j'ai besoin de remplir la couleur conditionnée par le fait qu'il s'agit de la même personne et qu'il s'agit de la dernière couleur enregistrée par lui.
voici le tableau :
| Nom | Changer la date du maillot | Date du prochain changement de chemise | couleur de chemise |
| Geai | 10/10/2019 22:19 | 15/10/2019 18:49 | Jaune |
| À M | 13/10/2019 6:09 | 13/10/2019 18:25 | brun |
| À M | 13/10/2019 18:25 | 16/10/2019 5:56 | n / A |
| Geai | 15/10/2019 18:49 | 18/10/2019 16:05 | n / A |
| À M | 16/10/2019 5:56 | 20/10/2019 2:31 | n / A |
| Geai | 18/10/2019 16:05 | 22/10/2019 3:17 | n / A |
| À M | 20/10/2019 2:31 | 23/10/2019 18:41 | n / A |
| Geai | 22/10/2019 3:17 | 25/10/2019 5:44 | n / A |
| À M | 23/10/2019 18:41 | 26/10/2019 21:14 | n / A |
| Geai | 25/10/2019 5:44 | 28/10/2019 9:10 | n / A |
| À M | 26/10/2019 21:14 | 29/10/2019 2:02 | n / A |
| Geai | 28/10/2019 9:10 | 31/10/2019 0:51 | Vert |
| À M | 29/10/2019 2:02 | 02/11/2019 3:13 | grise |
| Geai | 31/10/2019 0:51 | 03/11/2019 6:57 | brun |
| À M | 02/11/2019 3:13 | 03/11/2019 6:57 | n / A |
merci à tous ceux qui aident.
Re : Remplir les données manquantes avec des conditionsSalut @ marche545 ,
Jetez un œil à cette solution. c'est un peu low-tech mais vous devriez pouvoir obtenir le résultat que vous voulez. ouvrez simplement le fichier joint et exécutez le script suivant dessus.
Names Default To Here( 1 );
dt = current data table ();
dt << New Column( "Row", formula( :Row() ), eval formula );
dt:row << delete formula;
dt << Sort( replace table,
By( :name, :Change Shirt Date, :Next change shirt date ),
Order( Ascending, Ascending, Ascending ),
);
for each row ( if (:shirt color == "na", :shirt color = lag (:shirt color, 1)) );
dt << sort (replace table, By (:Row), order (Ascending));
Un problème similaire a été abordé dans ce post https://community.jmp.com/t5/Discussions/help-creating-a-column-that-is-a-cumulative-sum-based-on-other/mp/19991
faites-nous savoir si cela aide.
Ron