Re : le DataView le plus important ? Lignes NON exclues ! - Statut changé en : Reconnu@hogi - Merci pour votre suggestion! Nous avons enregistré votre demande et la prendrons en considération.
Re : le DataView le plus important ? Lignes NON exclues ! - Statut changé en : EnquêteRe : le DataView le plus important ? Lignes NON exclues !J'y pense depuis un moment et pendant mes courtes vacances, j'ai décidé de travailler sur une approche scénarisée pour le faire.
Nous examinons cela, cependant, pour le rendre plus facile à.

Voici mon script :
/***************************************************
SCRIPT NAME: Row Selector Viewer
AUTHOR(s):
Sam Gardner, JMP Statistical Discovery LLC
JMP VERSION:
Built with JMP 17.0 and tested with JMP 16.2
PURPOSE:
To allow the user to be able to easily subset and see rows that are selected or excluded or hidden, OR unselected or unexcluded or unhidden
SPECIFICATION:
Views of the desired subset of the current data table are created using linked subsets and data box views within a report window. Upon selecting an option, an invisible linked
subset of the desired rows to view is created, and then a new data view in a data box is displayed in the scripted report window.
USAGE:
Must be run with a data table open.
Upon running, choose the subset of the rows to view by selecting the check boxes. Note that this current version
only allows subsetting based in Selected/Excluded/Hidden or Unselected/Unexcluded/Unhidden
ASSUMPTIONS: None.
SCRIPT REVISION HISTORY:
VERSION DATE DESCRIPTION
1.0 2022 Dec 14 First Version
NOTES:
N/A
TO DO:
N/A
FUTURE IMPROVEMENT IDEAS:
None at this time.
***************************************************/
Names Default To Here( 1 );
dt = Current Data Table();
// function definitions
/*
// Loc Inverse Function
// This function converts a vector of positive integers (locvals) into an
// indicator vector of a specified length, n, with the values
// v[I] = 1 if I is in locvals, and 0 otherwise
// example
// Loc Inverse(6, [1,3])
// returns
// [1, 0, 1, 0, 0, 0]
*/
Loc Inverse = Function( {n, locvals},
v = J( n, 1, 0 );
v[locvals] = 1;
v;
);
Loc Inverse( 6, [1, 3] );
/*
// this gets the indicators of selected rows in the data table
LocInverse( N Rows( dt ), dt << Get Selected Rows );
// this gets the indicators of the excluded rows in the data table
Loc Inverse( N Rows( dt ), dt << GetExcludedRows );
// this gets the indicators of the hidden rows in the data table
Loc Inverse( N Rows( dt ), dt << GetHiddenRows );
*/
nw = New Window( "Row Selector Viewer",
<<ON close=""> 0,
For( i = 1, i <= N Items( viewchoice ), i++,
RowstoView = RowstoView | Match( viewchoice[i],
"Selected",
cbright << Set All( 0, run script( 0 ) );
Loc Inverse( N Rows( dt ), dt << Get Selected Rows );,
"Excluded",
cbright << Set All( 0, run script( 0 ) );
Loc Inverse( N Rows( dt ), dt << Get Excluded Rows );,
"Hidden",
cbright << Set All( 0, run script( 0 ) );
Loc Inverse( N Rows( dt ), dt << Get Hidden Rows );
)
);
RowstoView = Loc( RowstoView );
Print( RowstoView );
,
RowstoView = 1 :: N Rows( dt );
Print( RowstoView );
);
If( !Is Empty( dt_sub ),
Close( dt_sub, nosave );
Clear Symbols( dt_sub );
);
selectedrows = dt << get selected rows;
dt << clear select;
dt << select rows( RowstoView );
dt_sub = dt << Subset( Output Table( "Data View" ), Selected Rows( 1 ), Selected Columns Only( 0 ), Linked, Private );
dt << clear select;
dt << select rows( selectedrows );
pbright << Append( dt_sub << new data box() );
),
cbright = Check Box(
{"Unselected", "Unexcluded", "Unhidden"},
viewchoice = cbright << get selected;
RowstoView = J( N Rows( dt ), 1, 1 );
If( N Items( viewchoice ) > 0,
For( i = 1, i <= N Items( viewchoice ), i++,
RowstoView = RowstoView & Match( viewchoice[i],
"Unselected",
cbleft << Set All( 0, run script( 0 ) );
!(Loc Inverse( N Rows( dt ), dt << Get Selected Rows ));,
"Unexcluded",
cbleft << Set All( 0, run script( 0 ) );
!(Loc Inverse( N Rows( dt ), dt << Get Excluded Rows ));,
"Unhidden",
cbleft << Set All( 0, run script( 0 ) );
!(Loc Inverse( N Rows( dt ), dt << Get Hidden Rows ));
)
);
RowstoView = Loc( RowstoView );
Print( RowstoView );
,
RowstoView = 1 :: N Rows( dt );
Print( RowstoView );
);
If( !Is Empty( dt_sub ),
Close( dt_sub, nosave );
Clear Symbols( dt_sub );
);
selectedrows = dt << get selected rows;
dt << clear select;
dt << select rows( RowstoView );
dt_sub = dt << Subset( Output Table( "Data View" ), Selected Rows( 1 ), Selected Columns Only( 0 ), Linked, Private );
dt << clear select;
dt << select rows( selectedrows );
pbright << Append( dt_sub << new data box() );
)
)
),
Button Box( "Close Viewer", nw << close window )
),
pbright = Panel Box( "Data View", )
)
);
dt_sub = dt << Subset( All Rows, Selected Columns Only, Linked, Private );
pbright << Append( dt_sub << new data box() );
</ON>
Re : le DataView le plus important ? Lignes NON exclues !J'ai trouvé ceci dans la boîte d'envoi - je ne sais pas si je l'ai posté ailleurs ?
Dans le même contexte - veuillez également autoriser l'utilisateur à envoyer
dt << Get nonExcluded Rows();
à une table de données :
https://community.jmp.com/t5/Discussions/col-lt-lt-get-values-for-non-excluded-rows/mp/556579/highlight/true#M77051
La commande fastes sur une seule ligne pour cet important morceau de code est ~ facteur 10 plus lente :
allRows = dt << get rows where( Excluded() == 0 );
Et demander d'abord les lignes non exclues puis "inverser" la liste ajoute ~ 30% au budget temps
Re : le DataView le plus important ? Lignes NON exclues !@SamGardner .
Merci pour le code - de très bons menus.
devrait certainement aller dans le menu Subset de Jmp 18 
On pourrait demander @julien s'il souhaite également l'ajouter au complément de sous-ensemble dynamique 
Concernant mon message ici, j'ai en fait pensé à quelque chose de beaucoup plus petit - juste pour ajouter une option pour les lignes non exclues au menu en bas à gauche d'un tableau de données.
Pour être honnête, j'ai déjà tellement l'habitude de sélectionner les lignes exclues puis d'inverser la sélection - je dirais qu'une telle fonctionnalité arriverait trop tard pour moi.
Mais comme beaucoup de mes messages - les souhaits ne sont pas principalement pour moi, mais plus pour mes collègues ... et tous les autres utilisateurs de la communauté 

Re : le DataView le plus important ? Lignes NON exclues !Hum, que diriez-vous :
- ne pas ajouter "non-exclus" au tableau récapitulatif
- mais ajouter Sélectionnez non exclus dans le menu contextuel du clic droit de Exclu

y a-t-il des utilisateurs qui utilisent le caché Fonctionnalité?
puis ajoutez une option similaire à sélectionner non masqué Lignes
Re : le DataView le plus important ? Lignes NON exclues !Avec l'introduction de la barre d'outils QuickSelect, cela est devenu un peu plus facile :

Le nombre de clics est passé de
- sélectionner les lignes exclues (2 clics)
- inverser la sélection (lignes - sélection de lignes - inverser la sélection de lignes = 3 clics)
- vue des données pour les lignes sélectionnées (2 clics)
➜ 7 clics
à
- sélectionner les lignes exclues (2 clics)
- inverser (1 clic)
- vue des données pour les lignes sélectionnées (2 clics) avec la nouvelle barre d'outils Quickselect : 1 clic
➜ 5 4 clics
Perspectives:
avec les non exclus ajoutés au menu en bas à gauche, ce sera 2 clics

le DataView le plus important ? Lignes NON exclues !☐ nouvelle fonctionnalité intéressante
☑ pourrait aider de nombreux utilisateurs !
☐ supprime un « bug »
☐ agréable à avoir
☐ personne n'en a besoin
Le tableau récapitulatif des lignes en bas à gauche d'un tableau est très utile pour obtenir des DataViews (sous-ensembles) pour les lignes sélectionnées , les lignes exclues , etc.
La vue des données
Malheureusement, dans mon travail quotidien, j'ai beaucoup plus souvent besoin d'un sous-ensemble de lignes non exclues que de lignes exclues.
Donc, je vais:
1) 
2) 
3)

mon souhait : une entrée supplémentaire pour les lignes non exclues ,
comme ça

et par là : la possibilité de générer un DataView pour les lignes non exclues.
Avantage supplémentaire :
On peut voir directement le nombre de lignes réellement utilisées (= non exclues) et n'a pas besoin de le calculer (toutes les lignes - exclues)
plus de vœux soumis par 
Mélange et nettoyage des donnéesExploration et visualisation des donnéesPartager et communiquer les résultatsRe : le DataView le plus important ? Lignes NON exclues !Merci pour
où(non(exclu));
https://community.jmp.com/t5/Discussions/col-lt-lt-get-values-for-non-exclusive-rows/mp/619448/highlight/true#M81887
Re : le DataView le plus important ? Lignes NON exclues !@Sarah-Sylvestre
avec toutes ces options disponibles, de mon point de vue le sujet peut être clos.
Il y a d’autres entrées beaucoup plus importantes dans la liste de souhaits.
Re: le DataView le plus important ? Lignes NON exclues ! - Statut changé en : ArchivéMerci pour la mise à jour @hogi !