
In questa dimostrazione, vedremo come creare script per le analisi eseguite da alcune delle piattaforme più comunemente utilizzate in JMP. Nel diario, nella sezione, cliccherò su Dati di resistenza e umidità del calcestruzzo, e questo è il set di dati che userò per tutti gli esempi di questa dimostrazione. Abbiamo quindi il tipo di miscela di calcestruzzo, la resistenza del calcestruzzo risultante e l'umidità ambientale al momento dell'asciugatura. Sposterò questi dati di lato, poiché non esamineremo la tabella durante questa dimostrazione. E tornando al diario del corso, cliccherò su Script di analisi della distribuzione. Quindi, in questo script preimpostato, inviamo la distribuzione come messaggio alla tabella dati Concrete e memorizziamo il risultato in una variabile, dist, memorizzando il riferimento all'oggetto. E ancora una volta, questo sarà il riferimento all'oggetto del livello di analisi. Sto inserendo tutte e tre le colonne (Tipo di calcestruzzo, Umidità e Resistenza) nel ruolo di analisi Y, e poi sto anche richiedendo le stesse opzioni durante l'avvio per tutte e tre le colonne, ma come vedremo quando avremo la finestra del report aperta, non tutte le colonne possono rispondere a tutte queste opzioni. Quindi, passerò in rassegna le righe... E quindi un paio di cose dagli argomenti alla distribuzione quando avviamo la piattaforma... Pila è un'opzione nel menu del triangolo rosso... in alto, accanto a Distribuzioni... e cambia semplicemente gli istogrammi in orizzontali, cambia la posizione delle tabelle del report che in genere vediamo sotto gli istogrammi e se sono allineati: gli istogrammi stessi sono allineati uno accanto all'altro o verticalmente. Quindi Pila è quell'opzione nel menu del triangolo rosso... e puoi vedere che il nostro script ha usato il valore booleano per disattivarla. Quindi il tuo script potrebbe scegliere di farlo, perché in realtà è un'opzione molto comune che gli utenti modificano nelle loro preferenze in modo da avere sempre distribuzioni impilate. Se per il risultato dello script è importante che questi siano organizzati in modo predefinito, è possibile disattivare la pila. Inoltre, specifichiamo che gli istogrammi siano verticali. Questa opzione si trova nei singoli menu a triangolo rosso per ciascun triangolo rosso, sotto Opzioni Istogramma. Come potete vedere, è selezionata qui. E ancora una volta, questa è un'impostazione predefinita, quindi lo script cerca solo di garantire che la presentazione abbia l'aspetto predefinito in JMP, indipendentemente dalle preferenze dell'utente. Ora, nella riga successiva dello script, abbiamo i Quantili disattivati. Ebbene, i Quantili si applicano solo alle variabili continue. Se guardate nel menu a triangolo rosso accanto a Tipo di Calcestruzzo in uno qualsiasi di questi sottomenu, non troverete la parola "Quantili". Ma se guardo il triangolo rosso accanto a Umidità o Forza, sotto Opzioni di Visualizzazione, i Quantili normalmente sarebbero attivi per impostazione predefinita, ma potete vedere qui che non è selezionato in questo menu, perché abbiamo usato quel valore booleano. Allo stesso modo, il Box Plot dei Valori Esterni è in genere attivato per le variabili continue. E lo disattiviamo con un valore booleano in modo da non avere il box plot dei valori anomali. Infine, abbiamo richiesto il diagramma dei quantili normali con il valore booleano tra parentesi, e questo è qualcosa che normalmente non verrebbe attivato, ma lo abbiamo richiesto per queste variabili. E ancora una volta, questo faceva parte del lancio della piattaforma, quindi le variabili che erano in grado di rispondere a quei comandi lo hanno fatto. Ora, una volta lanciata la piattaforma e memorizzato il riferimento all'oggetto in una variabile, con la distribuzione, posso comunicare con tutte le variabili contemporaneamente oppure posso inviare messaggi a singole colonne o variabili. E lo faccio con gli indici. Quindi la riga mostra semplicemente l'invio di Distribuzione di Adattamento (Normale), quindi l'adattamento di una distribuzione normale, a tutte e tre le colonne. E ovviamente, il Tipo di Calcestruzzo, essendo nominale, non può rispondere a questo, ma l'Umidità e la Forza risponderanno. Quindi eseguo la riga. E potete vedere che abbiamo quella distribuzione normale adattata sovrapposta a entrambe le distribuzioni continue e otteniamo anche gli elementi del contorno normale adattato. Anche questo è un comando dal menu del triangolo rosso. "Adatta distribuzione" è un nome più datato per il comando. Nelle versioni più recenti di JMP si chiama "Adattamento continuo", ma entrambi funzionano ancora. E una cosa che volevo sottolineare: lasciatemi tornare al log. Quando ho eseguito lo script per avviare la distribuzione, è apparso il nome della piattaforma. E questa è l'indicazione che ho un riferimento a un oggetto del layer di analisi. E nello script, se passo il mouse su "dist", è quello che vedrò. Mentre quando ho inviato il comando dal menu del triangolo rosso in un secondo momento, ho ottenuto solo quel risultato "scriptabile". Ora, le righe e eseguiranno un test della media su un campione. E nel menu del triangolo rosso, il comando è semplicemente "Test media". Ma non ha senso che, per l'umidità, che ha la mia media campionaria pari a e la forza per la mia media campionaria pari a circa, non avrebbe davvero senso per me testare la stessa media ipotetica per entrambi. Quindi lasciate che vi mostri come appare in modo interattivo. Se vado su uno dei triangoli rossi accanto alle variabili continue e seleziono Media di test, inserisco un valore per la media ipotizzata. Quindi annullo e torno alla finestra dell'editor di script. Quindi, riga, sto verificando che la media sia uguale a e lo invio alla terza colonna nella finestra di distribuzione. Quindi metto in pedice dist con il numero. Quindi eseguo riga. E se vado alla finestra Report, c'è il test t a un campione sulla media. Farò la stessa cosa, quindi, per l'umidità con una media ipotetica diversa di e il modo in cui metto in pedice sarà leggermente diverso. Userò il nome della colonna come stringa di caratteri, come pedice, anziché la sua posizione nel report. Quindi eseguo riga e lì ottengo il test t per l'umidità. Quindi questi sono solo alcuni esempi per la piattaforma di distribuzione e lo scripting del livello di analisi utilizzando i comandi dal menu del triangolo rosso. Passiamo alla piattaforma unidirezionale. Chiudo lo script di distribuzione e il report di distribuzione, ma continuerò a usare la tabella dati Concrete. Nel diario, clicco sullo script ANOVA unidirezionale. All'inizio era piuttosto ampio. Abbiamo l'intero avvio su una sola riga. Inviamo il messaggio alla tabella dati Concrete. Il messaggio è l'avvio della piattaforma unidirezionale con Forza nel ruolo Y, Tipo di calcestruzzo nel ruolo X, e richiediamo che quei diamanti medi vengano attivati con quell'argomento booleano. Memorizziamo il riferimento all'oggetto del livello di analisi in ow. Quindi eseguo la riga . Otteniamo la nostra finestra di output e, naturalmente, il nome della piattaforma. Questo è ciò che verrà memorizzato in ow se ci si passa sopra con il mouse. Quei diamanti medi verdi... se vado sul triangolo rosso accanto ad Analisi unidirezionale, lo trovate in Opzioni di visualizzazione, Diamanti medi. E per impostazione predefinita, questi non sarebbero attivati se non avessi già eseguito l'analisi della varianza. Ma il mio script può attivarli. Ora, non ho bisogno che questa finestra dello script sia così ampia. Passiamo ad altri due esempi. Nel menu del triangolo rosso, abbiamo un'opzione per impostare il livello alfa. Ci sono tre valori standard. E poi c'è un Altro che puoi scegliere facoltativamente. In questo esempio, invio il messaggio a ow, Imposta livello alfa. Lo imposterò a E notate che l'altezza di questi rombi verdi della media è l'intervallo di confidenza sulla media o, in altre parole, l'intervallo di confidenza alfa negativo sulla media. Quindi l'alfa predefinito è Quindi se imposto il livello alfa a questi saranno intervallo di confidenza. Quindi diventeranno più alti. Quindi eseguirò la riga E così vediamo l'altezza di quei rombi della media cambiare. Un altro report che possiamo richiedere per la piattaforma unidirezionale, se vado al triangolo rosso, è il report Quantili. Quindi lo attivo in linea. E nota che i comandi in questo menu che non hanno sottomenu... possono accettare un argomento booleano tra parentesi o, come vedi in linea per l'ANOVA, che è sinonimo di medie, non devono accettare alcun argomento, mentre le voci di menu che hanno sottomenu accetteranno quelle voci di sottomenu come argomenti. E parlerò tra un momento del perché potremmo voler usare quell'argomento booleano, anche se non è obbligatorio. Ma per ora, eseguirò linea. In questo modo ottengo la tabella del report dei quantili e inserisco i box plot sul grafico. E ora, ricorda, ANOVA e medie sono sinonimi. Quindi questo è solo un altro comando dal menu del triangolo rosso. Ma ancora una volta, non ho inserito le parentesi nell'argomento booleano. Quindi cosa succede quando eseguo linea? Lo eseguirò. E ottengo l'analisi della varianza. Di nuovo, dovrei sottolineare che nel registro vediamo quel nome della piattaforma ogni volta che interagiamo con essa. Ora, cosa succede se eseguo di nuovo "line"? Ricevo un messaggio nel log, un messaggio con un argomento booleano vuoto che ha abilitato un'opzione già abilitata. Quell'opzione rimane abilitata. E menziona semplicemente che nelle versioni precedenti di JMP, si poteva effettivamente passare da una riga all'altra eseguendo ripetutamente quella riga senza dover fornire un argomento booleano. Quindi, se mai doveste guardare script scritti in versioni precedenti, potreste vederlo. Consigliamo, tuttavia, come best practice, di utilizzare sempre quell'argomento booleano in modo che sia chiaro nello script che sto attivando questa opzione anziché disattivarla. E poi, quando voglio rimuoverla, se voglio rimuoverla, eseguo una riga che aveva l'argomento booleano. In effetti, facciamolo per disattivare il report Quantiles. Quindi, in "line", sostituirò "con" ed eseguirò solo quella riga. E quindi ora l'opzione Quantiles è stata rimossa. Infine, avevamo visto in una dimostrazione precedente che è possibile inviare messaggi a cascata a un oggetto. Ma possiamo anche inviare un elenco di messaggi a un oggetto. Quindi creerò una nuova riga nella finestra dell'editor di script. E la variabile ow, che memorizza il riferimento all'oggetto del mio livello di analisi, riceverà il messaggio. Sarà un elenco, Varianze non uguali. Userò quell'argomento booleano per attivarlo. E lasciatemi andare al menu del triangolo rosso. Ecco "Varianze non uguali". Questo ci fornisce i test di eteroschedasticità. E metterò una virgola dopo, chiudendo la parentesi sull'argomento booleano per "Varianze non uguali". E riporterò il livello alfa al valore predefinito. Quindi digiterò "imposta livello alfa" e poi, tra parentesi, "E devo chiudere la parentesi perché ho spostato il cursore fuori da questa riga di codice prima di aver finito di digitare". E poi passerò con la freccia sull'elenco -- lasciatemi spostare questo in modo da poter vedere l'intera riga -- e inserirò un punto e virgola. Quindi posso eseguire solo questa riga, di nuovo, usando il tasto Invio del tastierino numerico. E in fondo alla finestra ora c'è il test di varianza disuguale. E in alto, potete vedere che abbiamo ripristinato il livello alfa a... Quindi questi sono i nostri intervalli di confidenza ora. E le piccole linee blu provengono solo dal test di varianza disuguale. Quindi, solo alcuni esempi di scripting con i comandi del triangolo rosso nella piattaforma unidirezionale: chiudiamo questa finestra del report e chiudiamo questo script senza salvare le modifiche. E nel registro, clicco su "Script bivariato". E di nuovo, stiamo lavorando con la tabella dati "Concreto". Quindi la variabile che memorizza i riferimenti a questo oggetto del layer di analisi è biv. E ho inviato Bivariato a quella tabella dati con "Forza" nel ruolo Y e "Umidità" nel ruolo X. E richiedo "Linea di adattamento", che proviene da quel menu a triangolo rosso come parte dell'avvio della piattaforma. Quindi eseguirò le linee attraverso... E di nuovo, vediamo il nome della piattaforma nel registro. E se passo il mouse su "biv", è quello che vedrò. Quindi abbiamo tracciato il grafico di Forza in funzione dell'Umidità, abbiamo adattato la retta di regressione. E poi alcuni altri messaggi... quindi se vado su quel triangolo rosso, di nuovo, c'è Adattamento Linea. Posso inviare qualsiasi altro comando dopo. In realtà avrei potuto inviare Adattamento Linea dopo l'avvio. Ma userò Adattamento Polinomiale. E vedete che c'è quel sottomenu. Quindi dovremo usare questi argomenti. E in linea invio quel messaggio a biv, Adattamento Polinomiale, quindi il polinomio quadratico o di secondo ordine. Eseguo quella retta. Questo mi dà un secondo adattamento. E quando scorro di nuovo verso l'alto, potete vedere che questo secondo adattamento è sovrapposto al grafico. E ho due menu a triangolo rosso qui, uno per l'adattamento lineare e uno per l'adattamento polinomiale. E hanno i loro comandi che sono diversi dai comandi a livello di adattamento bivariato in alto nella finestra. Ad esempio, se volessi ottenere un fit sfumato delle bande di confidenza sui fit lineari, il comando è Fit sfumato Confid, devo fare qualcosa di un po' speciale. Devo prima comunicare con il fit lineare. Quindi, il risultato del fit lineare che riceve quel messaggio viene inviato come messaggio al fit bivariato. E il modo in cui è scritto qui... ci riferiamo al primo come... entrambi sono chiamati Curva. Usiamo il pedice. Riceve il messaggio Fit sfumato Confid. Questo è raccolto tra parentesi. E questo è il messaggio che viene ricevuto da biv. Se non avessi queste parentesi, biv cercherebbe di interpretare Curva, che, ovviamente, non troverete da nessuna parte in nessuno dei sottomenu o nel menu principale qui. E Fit sfumato Confid non lo troverete qui. È associato a questa Curva, che è etichettata come Fit lineare nel report. Quindi, se eseguo tutta la linea, ottengo questo: bande di confidenza ombreggiate sulla mia retta di regressione. Analogamente, in uno qualsiasi di questi menu a triangolo rosso, ma cliccherò su quello accanto a Polynomial Fit, possiamo cambiare il colore della linea. L'impostazione predefinita è rosso per la prima curva, verde per la seconda e così via. Supponiamo quindi di volerlo cambiare in blu. Di nuovo, posso inviarlo alla seconda curva, racchiuderlo tra parentesi e questo è il messaggio che viene trasmesso a Bivariate. Quindi eseguo la linea. E potete vedere che il colore della linea è cambiato. Ora, anche questo è qualcosa. Se voleste sapere come scrivere questo script e non fosse necessario inviarlo come messaggio alla piattaforma dopo il lancio, ma voleste includerlo come parte del lancio, potreste farlo in modo interattivo e poi far salvare lo script a JMP nella finestra degli script e lavorarci in questo modo. In tal caso, Confid Shaded Fit sarebbe un argomento per la linea di regressione. E dovresti anche usare il polinomio come argomento per avviare. E il colore della linea sarebbe un argomento per questo. L'ultima cosa che vogliamo guardare qui è la piattaforma Bivariate, ma con una variabile nel ruolo By, in modo da ottenere oggetti bivariati separati per ogni livello di quella variabile By. Quindi chiudo la finestra dello script. E chiudo il report Bivariate. E nel diario del corso, clicco su Script Bivariate Raggruppato. Quindi, come nello script precedente, avvio la piattaforma Bivariate inviando il messaggio alla tabella dati Concrete che memorizza il risultato nella variabile biv con Forza nel ruolo Y e X nel ruolo Umidità. Ma ora inserisco anche il tipo Concrete in quel ruolo di analisi By. Vediamo come appare quando eseguo le linee attraverso... Quindi in realtà abbiamo sei oggetti bivariati in questa finestra del report. E quello che vedo nel log è che è stato assegnato un elenco con sei elementi. Bene, che aspetto ha questo elenco? Torno alla finestra dell'editor di script e passo il mouse su biv. Trovo un elenco di sei oggetti bivariati. Posso quindi inviare un messaggio a biv. Tutti gli oggetti risponderanno, come in line quando invio Fit Line. Nel log viene visualizzato l'elenco di tutti gli oggetti che hanno risposto. E se guardiamo nella finestra, comprimerò tutti questi adattamenti lineari tenendo premuto il tasto Ctrl e cliccando sul pulsante di visualizzazione del contorno accanto al primo adattamento lineare. Tenendo premuto il tasto Ctrl, questo verrà trasmesso a tutti i report nella finestra, così potrò scorrere più facilmente. Come potete vedere, abbiamo l'adattamento bivariato per Consolidated Reinforced, Consolidated Standard, EZMix Reinforced, EZMix Standard e così via. Ora, cosa succede se voglio indirizzare solo alcuni oggetti, non tutti gli oggetti bivariati? Beh, uso gli indici. E potrei usare un singolo indice per indirizzarne solo uno. Ma diamo un'occhiata a due esempi in cui vogliamo che più di un oggetto risponda. Quindi, nella riga per l'indice, forniamo un elenco dei valori di indice degli oggetti a cui vogliamo rispondere. Voglio che il primo e il terzo oggetto bivariato si adattino a quel modello quadratico, il polinomio di grado. Quindi eseguo la riga. E di nuovo, userò il tasto Ctrl per comprimere l'elemento di contorno dell'adattamento polinomiale per rendere lo scorrimento un po' più semplice. Quindi il primo oggetto, il primo oggetto bivariato, ha un adattamento polinomiale. Il secondo no. Il terzo sì. E ovviamente, il quarto, il quinto e il sesto no. E poi nell'ultimo esempio, sto usando la funzione Indice, di nuovo, usando il suo operatore, che è l'operatore infisso di due doppi due punti. Quindi questo conterà dal primo al secondo numero con incrementi di Quindi questo andrà a e Adatta Spline è un'opzione nel menu del triangolo rosso sotto Flessibile. E puoi vedere tutti i vari argomenti che puoi fornire. Stiamo quindi cercando di usare una spline abbastanza flessibile per la bivariazione. Quindi eseguirò la riga. E di nuovo, notate nel log... ho dimenticato di sottolinearlo. Ma quando invio un messaggio a due degli oggetti, ottengo un elenco con due oggetti. E proprio ora, quando invio un messaggio a tre degli oggetti, ottengo un elenco dei tre oggetti. E se diamo un'occhiata, possiamo vedere che il primo e il secondo adattamento bivariato non hanno ricevuto una spline. Il terzo sì. Il quarto sì. Il quinto sì. E il sesto no. Quindi possiamo usare un ruolo By e avere analisi separate, oggetti separati, per ogni livello di quella variabile By. E quindi possiamo comunicare con tutti loro insieme o individualmente. Questi erano solo alcuni esempi di avvio e successiva interazione con il livello di analisi in alcune delle piattaforme JMP più comunemente utilizzate.