Come rappresentare graficamente gli ultimi N valori di una colonna?Ciao a tutti,
Sono ancora relativamente nuovo in JSL, quindi costruisco i miei codici di script mentre vado avanti.
Sto cercando di aggiungere a una finestra del grafico di controllo il grafico degli ultimi 25 punti dati in una colonna di valori M, ad esempio colonna (M-25) a (M).
Sto pensando di modificare lo script del generatore di grafici per fare questo:
Control Chart Builder(
Size( 534, 454 ),
Show Two Shewhart Charts( 0 ),
Show Control Panel( 0 ),
Show Limit Summaries( 0 ),
Show Capability( 0 ),
Variables( Y( :Name( "MyColumn" ) ) ),
Chart(
Points( Statistic( "Individual" ) ),
Limits( Sigma( "Moving Range" ) ),
Warnings( Test Beyond Limits( 1 ) )
),
SendToReport(
Dispatch(
{},
"graph display 1 title",
TextEditBox,
{Set Text( "Last 25 Observations" )}
),
Dispatch( {}, "MyColumn Limit Summaries", OutlineBox, {Close( 1 )} )
)
)Il problema che sto riscontrando è come scegliere solo gli ultimi N valori da visualizzare (N potrebbe essere 25, 30 o 100). La mia esperienza con altri linguaggi di programmazione come Igor o Matlab non si traduce in JSL su come rappresentare graficamente solo un sottoinsieme di dati da una colonna.
Se possibile, preferirei che tracciasse i dati rispetto all'indice delle righe, come nei grafici di controllo, e so che il grafico Overlay può farlo, ma mi piace anche che il valore medio venga visualizzato nel grafico. Preferirei NON tracciare i dati come Fit Y per X.
Grazie!
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?CIAO @Godwin ,
Ogni situazione particolare è leggermente diversa e potrebbe richiedere una leggera modifica del codice per le specifiche in questione. Se puoi condividere una tabella dati e il codice con cui stai lavorando, ciò potrebbe aiutare me e altri in questo thread ad affrontare meglio le specifiche di ciò che stai cercando di fare.
Grazie!,
DS
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Puoi condividere il codice esatto che hai utilizzato per controllare il grafico dell'ultima colonna N, per favore. Non ho fortuna con la modifica.
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Grazie!Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Names DefaultToHere(1);
// Open a table and give it a table reference ('dt')
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Select the data you do not want, and exclude them
dt << select where( :sex == "F" );
dt << hide and exclude;
// Clear the selections
dt << clear select;
// Create the chart, only none excluded/hidden rows will be displayed
dt << Graph Builder(
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 6 ) ), Smoother( X, Y, Legend( 7 ) ) )
);Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Grazie! Non sono sicuro di aver inviato correttamente la mia domanda. Voglio disegnare un grafico di un dato set di big data. Ma devo verificare che una particolare colonna soddisfi se la condizione e quindi, se la condizione è soddisfatta, considera le righe corrispondenti per tracciare il grafico. Vorrei farlo tramite lo script jsl. Potresti aiutarmi dato che sono molto principiante. Grazie!
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Questa sembra essere una domanda diversa dall'argomento del thread, ma forse prova qualcosa del genere:
Names DefaultToHere(1);
// Open a table and give it a table reference ('dt')
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Get a list of all the columns in the table
cols = dt << getColumnNames("String");
// Define any logical condition that identifies one or more columns by its name
targetCols = {};
for(c=1, c<=NItems(cols), c++, if(Contains(cols[c], "gh"), InsertInto(targetCols, cols[c])));
// Make a plot using'taregtCols' as the y variables
biv = dt << OneWay(X(:sex), Y(Eval(targetCols)));Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Salve signore, voglio disegnare un grafico di un dato set di big data. Ma devo verificare che una particolare colonna soddisfi la condizione e quindi considerare le righe corrispondenti per tracciare il grafico. Vorrei farlo tramite lo script jsl. Potresti aiutarmi dato che sono molto principiante. Grazie!Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Come rappresentare graficamente i dati dalla tabella dati con una colonna particolare che soddisfa la condizione se?Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?CIAO @txnelson , grazie per il suggerimento. Alla fine ho modificato leggermente il codice in modo che cercasse voci vuote anziché solo voci diverse da zero. Il tuo metodo ha funzionato e dovevo solo adattarlo leggermente alla mia situazione specifica.
Grazie ancora!
lastNmiss = 0;
For( ii = N Rows( dt ), ii >= 1, ii--,
If( IsMissing(dt:weight[ii])!=1, lastNmiss++ );
If( lastnmiss == 8, Break() );
);
lastNmiss = N Row( dt ) - ii;
n = N Row( dt );
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Where( Row() > (n - lastnmiss) )
);
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Ecco una semplice modifica allo script that @Mark_Bailey ha scritto, che trova la riga che ha l'ultimo numero x di valori diversi da zero
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt:weight[38] = 0;
last n = 0;
For( i = N Rows( dt ), i >= 1, i--,
If( :weight[i] > 0, last n++ );
If( last n == 5, Break() );
);
last n = N Row( dt ) - i;
n = N Row( dt );
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Where( Row() > (n - last n) )
);
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?@Mark_Bailey Grazie per l'aiuto.
Ora sto cercando di provare a modificare quel codice in modo che rappresenti graficamente gli ultimi N valori diversi da zero. Ho diverse righe in una colonna che potrebbero avere valori mancanti e desidero rappresentare graficamente solo le righe che hanno una voce. In questo momento, se ci sono solo una o due righe all'interno dell'ultima N (nel mio caso 25) che sono diverse da zero, vengono rappresentate graficamente solo quelle una o due righe.
Il tuo aiuto/feedback è molto apprezzato. Grazie!
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Lavorato! Grazie.
Ho dovuto modificarlo leggermente per le specifiche, ma ha funzionato.
Ri: Come rappresentare graficamente gli ultimi N valori di una colonna?Ecco un esempio con Bivariate e Big Class che potrebbe essere adattato:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
last n = 5;
n = N Row( dt );
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Where( Row() > (n - last n) )
)
È semplice.