Funzioni aggiuntive per tabella riepilogativa tramite JSLVorrei sapere come posso ottenere tabelle riassuntive ma con statistiche aggiuntive.
Per esempio, Modalità() è una funzione che si può usare in una formula, ma questo non funziona:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Summary( Group( :Age ),
subgroup( :sex ),
Mode( :Height )); // Mode isntead of meanVorrei anche riassumere la tabella ottenendo l'ultimo o il primo numero del gruppo.
Modellazione statistica avanzataConsumatori e ricerche di mercatoOrganizzazione dei contenutiMiscelazione e pulizia dei datiEsplorazione e visualizzazione dei datiProgettazione di esperimentiPersonalizzazione di massaQualità e ingegneria di processoOggetto: Funzioni aggiuntive per tabella riepilogativa tramite JSLPuoi creare tabelle di riepilogo (o qualsiasi funzione di tabelle) molto più velocemente utilizzando impostando la loro visibilità: privata, invisibile, visibile. quando lavoravo con file molto grandi e avevo solo bisogno di estrarre le modalità che usavo private.
Oggetto: Funzioni aggiuntive per tabella riepilogativa tramite JSLStavo testando questo approccio e non è fattibile, temo.
JMP impiega troppo tempo per utilizzare le distribuzioni di visualizzazione durante il raggruppamento di molti elementi in una grande tabella (mezzo milione di righe e centinaia di colonne).
Al contrario, le funzioni predefinite nella tabella di riepilogo vengono calcolate molto velocemente.
Oggetto: Funzioni aggiuntive per tabella riepilogativa tramite JSLBel trucco usando la piattaforma di distribuzione come un modo per ottenerli.
Ho aggiunto la richiesta qui.Estendere le funzioni della tabella di riepilogo a qualsiasi funzione definita (ad es. mode, kurt, skew, ecc.)
Oggetto: Funzioni aggiuntive per tabella riepilogativa tramite JSLCIAO @FN ,
ci devono essere molti modi per ottenere ciò che stai chiedendo anche se Mode non è un'opzione nel riepilogo della tabella. Puoi richiedere la modalità nella tabella aggiuntiva delle statistiche di riepilogo nella piattaforma di distribuzione manualmente o facendo clic su come @ian_jmp suggerisce. Altrimenti, prova a utilizzare il componente aggiuntivo di brady_brady :
Extended-Summary-Statistics-Add-in-for-JMP che fa riferimento alla modalità dal menu.
in alternativa, prova il seguente script:
Names Default To Here( 1 );
// Open Data Table: Big Class.jmp
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// get frequencies for modes
dt2 = dt << Summary(
Group( :Age, :sex, :height ),
Link to original data table( 0 )
);
// delete all rows that are not modes
dt2 << select where( Or( :N Rows != Col Max( :N Rows, :age, :sex ), :N Rows == 1 ) );
dt2 << delete rows;
// indicate first and last values per group - Not min and max unless table is first sorted!!!
dt << New Column( "id age", Numeric, "Continuous", Format( "Best", 12 ), Formula( Sum( :age[Index( 1, Row() )] == :age ) ), eval formula, );
dt:id age << delete formula;
// remove all rows that are not first or last
dt << select where( And( :id age != Col Max( :id age, :age ), :id age != 1 ) );
dt << delete rows;
// create one table with all data and sort it
dt3 = dt << concatenate( dt2, Create source column );
dt3 << New Column( "Value",
Character,
"Ordinal",
Formula( If( :id age == 1, "First", :id age > 1, "Last", :N Rows > 1, "Mode" ) ),
Set Property( "Value Order", {Custom Order( {"First", "Mode", "Last"} ), Common Order( 0 )} ),
);
dt3 << sort( By( :age, :sex, :Value ), Order( Ascending ), replace table );
si prega di notare che nel caso della classe Big, non tutti i gruppi hanno una modalità chiara. il mio approccio era di rimuoverlo la frequenza più alta era uguale a 1.
per favore facci sapere se funziona o cosa deve essere migliorato.
Ron
Oggetto: Funzioni aggiuntive per tabella riepilogativa tramite JSLFWIW (e se conosci un po' di JSL), puoi fare questo genere di cose:
Names Default To Here( 1 );
// Sample data
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Invisible Distribution with 'By' group(s)
dist = dt << Distribution(Continuous Distribution(Column( :height ),Customize Summary Statistics(Mode(1))), By(:age, :sex), Invisible);
// Get the Summary Stats
dt2 = Report(dist[1])[TableBox(2)] << makeCombinedDataTable;
Report(dist[1]) << closeWindow;
// Retain only the Mode
dt3 = dt2 << Subset(Rows(dt2 << getRowsWhere(:Column 1 == "Mode")));
dt3 << setName("Mode Values");
Column(dt3, "Column 1") << setName("Statistic");
Column(dt3, "Column 2") << setName("Value");
Close(dt2, NoSave);
prenderei in considerazione anche il Lista dei desideri JMP .
Oggetto: Funzioni aggiuntive per la tabella riepilogativa tramite JSLIn JMP esistono molti modi per generare statistiche di riepilogo raggruppate. Ogni metodo fornisce alcune statistiche e non ne fornisce altre.
La piattaforma di distribuzione e le statistiche dell'intestazione sono molto più avanti delle altre (Graph Builder, JSL Col ... funzione).
https://community.jmp.com/t5/Community-Wish-List/Wish-list-new-Label-user-experience/idc-p/771691/highlight/true#M60
Immagino che i programmatori delle altre piattaforme siano ansiosi di mettersi al passo...