Altoparlante | Trascrizione |
| Mia Stephens | Benvenuto a JMP Discovery Summit. Sono Mia Stephens e sono una product manager di JMP. E sono affiancato da Jordan Hiller, che è un ingegnere di sistema. E oggi parleremo dell'automazione del flusso di lavoro di cura dei dati. |
| E questo è l'abstract solo per riferimento; Non ne parlerò. |
| E suddivideremo questo discorso in due parti. Lo prenderò in considerazione e parlerò del flusso di lavoro analitico |
| e parlare della creazione dei dati, cosa intendiamo per cura dei dati. E vedremo come identificare potenziali problemi di qualità dei dati nei tuoi dati. |
| E poi lo consegnerò a Jordan, e Jordan parlerà della necessità di riproducibilità. |
| Condividerà con noi un cheat sheet per la cura dei dati e mostrerà come ... come curare i tuoi dati in JMP. |
| il registratore di azioni e il registro avanzato. |
| Quindi parliamo del flusso di lavoro analitico. |
| Tutto inizia con un problema aziendale che stiamo cercando di risolvere. |
| E ovviamente abbiamo bisogno di compilare i dati e tu puoi compilare i dati da una serie di fonti diverse e portare i dati in un JMP. |
| E alla fine, dobbiamo essere in grado di condividere i risultati, comunicare le nostre scoperte con gli altri. A volte questo è forse un progetto una tantum, |
| ma spesso abbiamo analisi che ripeteremo. Quindi una domanda fondamentale affrontata da questo discorso è: puoi riprodurre facilmente i tuoi risultati? |
| Gli altri possono riprodurre i tuoi risultati? Oppure, se disponi di nuovi dati o, se hai dati aggiornati, puoi ripetere facilmente la tua analisi e, in particolare, i passaggi di cura dei dati su questi nuovi dati? Quindi questo è ciò a cui stiamo parlando in questo discorso. |
| Ma cos'è esattamente la cura dei dati? |
| E perché dobbiamo preoccuparcene? |
| Bene, la cura dei dati consiste nel garantire che i nostri dati siano utili per guidare le scoperte analitiche. Fondamentalmente, dobbiamo essere in grado di risolvere i problemi che stiamo cercando di affrontare. |
| E riguarda soprattutto l'organizzazione dei dati, la struttura dei dati e anche la pulizia dei dati. |
| Se pensi ai problemi che potremmo incontrare con i dati, tendono a rientrare in quattro categorie generali |
| potresti avere una formattazione errata, potresti avere dati incompleti, dati mancanti o dati sporchi o disordinati. |
| E per aiutarci a parlare di questi problemi, prenderemo in prestito alcuni contenuti da STIPS. E se non hai familiarità con STIPS, STIPS è il nostro corso gratuito, Statistical Thinking for Industrial Problem Solving. |
| E questo è un corso basato su sette moduli indipendenti e il secondo modulo è l'analisi esplorativa dei dati. |
| E a causa della natura iterativa e interattiva dell'analisi esplorativa dei dati e della cura dei dati, l'ultima lezione di questo modello ... in questo modulo si chiama Preparazione dei dati per l'analisi, quindi stiamo prendendo molto a prestito da questa lezione nel corso di questo discorso. |
| Analizziamo ciascuno di questi problemi. Formattazione errata. Cosa si intende per formattazione errata? Bene, questo è quando i tuoi dati sono nella forma sbagliata o nel formato sbagliato per l'analisi. Questo può essere applicato alla tabella dati nel suo complesso. Quindi, ad esempio, potresti avere |
| chiamato ... dati memorizzati in colonne separate, ma in realtà hai bisogno dei dati memorizzati in una colonna. |
| Oppure potresti avere i tuoi dati in tabelle di dati separate e devi concatenare o aggiornare o unire le tabelle di dati insieme. |
| Può riferirsi a singole variabili. Quindi, ad esempio, potresti avere il tipo di modellazione sbagliato. Oppure potresti avere date nella tua tabella dati, quindi potresti avere colonne di date e potrebbero non essere formattate come giorni, quindi l'analisi potrebbe non riconoscere che questi sono ... questi sono dati di date. |
| La formattazione può anche essere cosmetica. Quindi, ad esempio, se hai a che fare con una tabella di dati di grandi dimensioni, potresti avere molte colonne ... |
| potresti avere nomi ... nomi di colonne che non sono realmente riconoscibili che potresti voler cambiare. |
| Potresti avere molte colonne che potresti voler raggruppare per renderlo un po 'più gestibile. |
| La colonna delle risposte potrebbe trovarsi alla fine della tabella dei dati e potresti volerla spostare verso l'alto. Quindi i problemi estetici non intralceranno necessariamente la tua analisi, ma se riesci ad affrontare alcuni di questi problemi, puoi rendere la tua analisi un po 'più semplice. |
| I dati incompleti sono quando hai una mancanza di dati. Questa può essere una mancanza di dati su variabili importanti. Quindi, ad esempio, potresti non aver acquisito dati su variabili fondamentali per risolvere il problema. Potrebbe anche essere una mancanza di dati su una combinazione di variabili. |
| Quindi, ad esempio, potresti non disporre di informazioni sufficienti per stimare un'interazione. |
| Oppure potresti avere una variabile target che ti interessa che è sbilanciata, quindi potresti studiare qualcosa come i difetti. Potrebbe essere solo il 5% delle tue osservazioni |
| sono per i difetti e potresti non avere dati sufficienti, perché sai, potresti avere solo un sottoinsieme molto piccolo dei tuoi dati |
| dove è presente il difetto. Potresti non disporre di dati sufficienti per comprendere le potenziali cause dei difetti. Potresti anche non avere una dimensione del campione abbastanza grande, quindi semplicemente non hai abbastanza dati per avere buone stime. |
| I dati mancanti si verificano quando mancano i valori per le variabili e questo può assumere diverse forme. |
| Se ti mancano i dati e i dati ... la mancanza non è casuale, questo può causare un problema serio, quindi potresti avere stime distorte. |
| Se ti mancano i dati completamente a caso, questo potrebbe non essere un problema se ti mancano solo alcune osservazioni, ma se ti mancano molti dati, questo può essere problematico. |
| I dati sporchi e disordinati si verificano quando si hanno problemi con le osservazioni o con le variabili. Quindi potresti avere valori errati, i valori sono semplicemente sbagliati. |
| Potresti avere incongruenze. Quindi, ad esempio, potresti avere refusi o errori tipografici quando le persone inseriscono le cose in modo diverso. |
| I valori potrebbero essere imprecisi. Quindi, ad esempio, potresti avere problemi con il tuo sistema di misurazione. Possono esserci errori, possono esserci errori di battitura, i dati potrebbero essere obsoleti. |
| Per dati obsoleti si hanno dati, ad esempio, su una struttura o una macchina che non è più in servizio. |
| I dati potrebbero essere obsoleti, quindi potresti avere dati che risalgono a un periodo di due o tre anni, ma il processo potrebbe essere cambiato da qualche parte in quel lasso di tempo, |
| il che significa che quei dati storici potrebbero non essere rilevanti per il processo attuale così com'è oggi. I tuoi dati potrebbero essere censurati o troncati. |
| Puoi avere colonne ridondanti, ovvero colonne che contengono essenzialmente le stesse informazioni. Oppure potresti avere osservazioni duplicate. |
| Quindi i dati sporchi o disordinati possono assumere molte forme diverse. |
| Quindi come identificate potenziali problemi? |
| Bene, un buon punto di partenza è esplorare i tuoi dati e, di fatto, identificare i problemi ti porta all'esplorazione dei dati e quindi all'analisi. E quando inizi a esplorare i tuoi dati, inizi a identificare le cose che potrebbero causare problemi nella tua analisi. |
| Quindi un buon punto di partenza è scansionare la tabella dei dati per problemi evidenti. |
| Quindi useremo un esempio per tutto il resto di questo discorso chiamato Components, e questo è un esempio tratto dal corso STIPS |
| dove un'azienda produce piccoli componenti e ha un problema con la resa. Quindi i dati sono stati raccolti, ci sono 369 lotti. Sono state acquisite 15 caratteristiche e desideriamo utilizzare questi dati per comprendere le potenziali cause profonde di un basso rendimento. |
| Quindi, se iniziamo a guardare la tabella dei dati stessa, ci sono alcuni indizi su quali tipi di problemi di qualità dei dati potremmo avere. E un ottimo punto di partenza (e questo è stato aggiunto in JMP 15) |
| è è è grafici di intestazione. Adoro i grafici delle intestazioni. Quello che fanno è, se hai una variabile continua che ti mostra un istogramma, così puoi vedere la centratura, la forma e la diffusione della distribuzione. |
| Ti mostrano anche l'intervallo dei valori. Se disponi di dati categoriali, ti mostrerà un grafico a barre con i valori per le barre più popolose. Quindi diamo un'occhiata ad alcuni di questi. Inizierò con il numero di lotto. Quindi il numero di lotto mostra un istogramma ed è in realtà di forma uniforme. |
| Il lotto numera qualcosa che probabilmente è un identificatore, quindi subito, posso vedere che questi dati sono probabilmente codificati in modo errato. |
| Vedo che questa distribuzione è molto distorta e posso anche vedere che il valore più basso è -6, e questo può farmi porre domande sulla fattibilità di avere un numero di scarto negativo. |
| Il processo è un altro. Ho fondamentalmente due barre e in realtà mi mostra un istogramma con solo due valori. |
| E mentre guardo questi grafici a colonne, questi grafici di intestazione, posso guardare il pannello delle colonne, |
| ed è abbastanza facile vedere che, ad esempio, il numero di lotto e il numero di parte e il processo sono tutti codificati come continui. Quando importi i dati in JMP, se JMP vede i numeri, codificherà automaticamente queste colonne come continue numeriche. Quindi queste sono cose che potremmo voler cambiare. |
| Possiamo anche esaminare i dati stessi. Quindi, ad esempio, quando guardo l'umidità (e il contesto è molto importante quando guardi i tuoi dati) l'umidità è qualcosa che potremmo considerare come dati continui. |
| Ma ho un paio di campi qui dove ho N / A. |
| Se si dispone di dati alfanumerici, se si dispone di dati di testo in una colonna numerica, la colonna verrà codificata come nominale quando si estraggono i dati in JMP. Quindi questo è qualcosa subito che vediamo che avremo bisogno di aggiustare. |
| E posso anche guardare attraverso le altre colonne. Quindi, ad esempio, Fornitore, vedo che mi mancano alcuni valori. Quando si estraggono i dati in JMP, se esistono |
| celle vuote per dati categoriali, sappiamo che mancano valori. Vedo che ci sono alcune voci in cui non siamo coerenti ... non coerenti nel modo in cui i dati sono stati inseriti. |
| Quindi sto ottenendo alcuni indizi seri su alcuni potenziali problemi con i miei dati. |
| notare tutti i punti. La temperatura è una variabile continua e dove vedo dei punti, indica che mi mancano dei valori. Quindi la temperatura è qualcosa che è davvero importante per la mia analisi, questo potrebbe essere problematico. |
| Una naturale estensione di questo è iniziare a esplorare i dati, una variabile alla volta. Uno dei miei strumenti preferiti quando voglio iniziare a guardare i dati per la prima volta è il visualizzatore di colonne. E il visualizzatore di colonne ci fornisce riepiloghi numerici per le variabili che abbiamo selezionato. |
| Se mancano dei valori, ci sarà una colonna N Missing. E qui posso vedere che mi mancano 265 dei 369 valori per la temperatura, quindi questo questo, questo è un grave divario qui se pensiamo che la temperatura sarà importante nell'analisi. |
| Posso anche vedere se ho dei valori strani. Quindi, quando guardo cose come Min e Max per il numero scartato e il tasso di scarto, ho valori negativi. E se questo non è fattibile, allora ho un problema con i dati o il sistema di raccolta dati. |
| È anche abbastanza facile vedere l'errata codifica delle variabili. Quindi, ad esempio, la struttura e il numero di lotto, che dovrebbero probabilmente essere codificati come nominali, riportavano una media e la deviazione standard. |
| E un buon modo per pensarci è, se non è fisicamente possibile avere un numero di lotto medio o (il numero di parte era l'altra variabile) o un numero di parte, allora questi dovrebbero essere modificati in variabili nominali, invece che continue. |
| Distributions is è il prossimo posto in cui vado quando prendo familiarità con i miei dati. |
| E le distribuzioni, se hai dati continui, ti consentono di comprendere la forma, la centratura e la diffusione dei tuoi dati, ma puoi anche vedere se hai dei valori insoliti. |
| Per i dati categoriali, puoi anche vedere quanti livelli hai. Quindi, ad esempio, il numero del cliente. Se il numero del cliente è una variabile importante o potenzialmente importante, |
| Ho molti livelli o valori per il numero cliente. Quando preparo i dati, potrei combinarli in quattro o cinque bucket con un'altra categoria per quei clienti per i quali non dispongo di molti dati. |
| Umidità. Vediamo il problema con l'avere N / A nella colonna. Vediamo un grafico a barre invece di un istogramma. |
| Possiamo facilmente vedere cosa stavamo guardando nei dati per il fornitore. Ad esempio, Cox Inc e Cox, Anderson ha scritto tre modi diversi, Hersh è scritto in tre modi diversi. |
| Per la velocità, nota per la velocità che abbiamo una distribuzione a cumuli che va da circa 60 a 140 ma, in fondo, vediamo che c'è un valore o due |
| è abbastanza vicino allo zero, e questo potrebbe essere ... potrebbe essere stato un errore di immissione dei dati, ma è sicuramente qualcosa che vorremmo indagare. |
| Un'estensione di questo è iniziare a guardare i tuoi dati due variabili alla volta. Quindi, ad esempio, utilizzando Graph Builder o grafici a dispersione. |
| E quando guardi le variabili due alla volta, puoi vedere modelli e puoi vedere più facilmente schemi insoliti che attraversano più di una variabile. |
| Quindi, ad esempio, se guardo il tasso di scarto e il numero di rottami, vedo che ho alcune band. E potrebbe essere che tu abbia qualcosa nella tua tabella dati che può spiegare questo modello. |
| E in questo caso, la fascia è attribuita a diverse dimensioni di lotto, quindi questa fascia viola è dove ho una dimensione di lotto di 5.000. |
| E ho molte più possibilità di rottami con un lotto di dimensioni maggiori rispetto a quello che ho per lotti di dimensioni inferiori. Quindi potrebbe avere un senso, ma vedo anche qualcosa che non ha senso. Questi due valori qui sotto nella gamma negativa. |
| Quindi è abbastanza facile vederli quando guardo i dati in due dimensioni. |
| Posso aggiungere ulteriore dimensionalità ai miei grafici utilizzando selettori di colonna e filtri di dati. |
| Questo mi sta anche portando a una potenziale analisi, quindi potrei essere interessato a capire quali sono le x che potrebbero essere importanti, che potrebbero essere correlate al tasso di scarto. |
| E allo stesso tempo, esamina i problemi di qualità dei dati o potenziali problemi. Quindi, per il tasso di scarto, sembra che esista una relazione positiva tra pressione e tasso di scarto. |
| non sembra che ci sia troppa relazione. Tasso di scarto rispetto alla temperatura, questo è piuttosto piatto, quindi non c'è molto da fare qui. |
| Ma nota la velocità. C'è una relazione negativa, ma in alto vedo questi due valori; l'unico valore che ho visto sull'istogramma, ma c'è un secondo valore che sembra risaltare. |
| Quindi potrebbe essere che questo valore intorno a 60 sia semplicemente un valore anomalo, ma potrebbe essere un punto valido. Probabilmente mi metterei in dubbio se questo punto qui in basso vicino a 0 sia valido o meno. |
| Quindi abbiamo esaminato la tabella dei dati. Abbiamo esaminato i dati una variabile alla volta. Abbiamo esaminato i dati due variabili alla volta e tutto questo si adatta perfettamente all'esplorazione dei dati e ci conduce all'analisi. |
| Ci sono strumenti più avanzati che potremmo usare (ad esempio, esplorare valori anomali, esplorare mancanti) che esulano dallo scopo di questo corso o di questo discorso. |
| E quando inizi ad analizzare i tuoi dati, probabilmente identificherai ulteriori problemi. Quindi, ad esempio, se hai molte categorie di variabili categoriali |
| e provi a inserire un'interazione in un modello di regressione, sai che JMP ti avviserà che non puoi farlo davvero. Quindi, quando inizi ad analizzare i dati, l'intero processo è iterativo e identificherai potenziali problemi durante il processo. |
| Una chiave è che vuoi prendere nota dei problemi che incontri mentre guardi i tuoi dati. E alcuni di questi possono essere |
| corretto man mano che procedi, in modo da poter nascondere ed escludere valori, puoi rimodellare puoi ripulire i tuoi dati man mano che procedi, ma potresti decidere di dover raccogliere nuovi dati. Potresti voler condurre un DOE in modo da avere più fiducia nei dati stessi. |
| Se sai che ripeterai questa analisi o che qualcun altro vorrà ripetere questa analisi, |
| quindi vorrai assicurarti di catturare i tuoi passi che stai facendo in modo da avere la riproducibilità. Qualcun altro può riprodurre i tuoi risultati oppure puoi ripetere l'analisi in un secondo momento. Quindi è qui che lo consegnerò a Jordan, e Jordan andrà a |
| Parla della cura dei dati riproducibili. |
| Jordan Hiller | Va bene, grazie, Mia. |
| Ciao, sono Jordan Hiller. Sono un ingegnere di sistema per JMP. Esaminiamo un po 'e parliamo ancora di riproducibilità |
| per la cura dei tuoi dati. |
| Mia ha introdotto questa idea molto bene, ma diamo qualche dettaglio in più. L'idea qui è che vogliamo essere in grado di rieseguire facilmente |
| tutti i nostri passaggi di cura che utilizziamo per preparare i nostri dati per l'analisi e ci sono tre vantaggi principali che vedo nel farlo. Il primo è l'efficienza. Se devi ... se i tuoi dati cambiano e devi ripetere questi passaggi di cura su nuovi dati in futuro, |
| è molto più efficiente eseguirlo una volta con uno script con un clic piuttosto che eseguire nuovamente tutte le attività punta e clicca. La precisione è il secondo vantaggio. Puntare e fare clic può essere soggetto a errori e, trasformandolo in uno script, si garantisce una riproduzione accurata. |
| E infine è la documentazione, e questo forse è sottovalutato. Se hai uno script, documenta i passaggi che tu |
| ha preso. È una scia di breadcrumb che puoi rivisitare in seguito quando, inevitabilmente, devi rivisitare questo progetto e ricorda, cosa ho fatto per preparare questi dati? |
| Avere quel copione è di grande aiuto. Quindi oggi esamineremo un caso di studio. Ti mostrerò come generare uno di questi script di cura dei dati riproducibili |
| utilizzando solo punta e clicca. E la tecnologia abilitante è qualcosa di nuovo in JMP 16. È il registro avanzato e la registrazione dell'azione che si trova nel registro avanzato. |
| Quindi ecco cosa faremo, eseguiremo le nostre attività di cura dei dati come al solito puntando e facendo clic. Mentre lo facciamo, |
| lo script di cui abbiamo bisogno, il codice del computer (si chiama codice JSL, JSL per il linguaggio di scripting JMP) verrà acquisito automaticamente |
| nel nuovo registro migliorato. E poi, quando abbiamo finito con la nostra selezione punta e clicca, tutto ciò che dobbiamo fare è prendere quel codice e salvarlo. Potremmo voler apportare alcune modifiche, alcune modifiche, solo per renderlo un po 'più forte, ma quella parte è facoltativa. |
| Ok, quindi questo è un cheat sheet che puoi usare. Queste sono alcune delle attività di pulizia dei dati più comuni |
| e come eseguirli in JMP 16 in modo da lasciarti quella scia di breadcrumb, in modo da lasciare lo script JSL nel log avanzato. Quindi copre cose come operare su righe, operare su colonne, |
| modi per modificare la tabella dati, tutte le nostre operazioni di pulizia dei dati e come farlo punta e clicca. |
| Quindi non è un elenco esaustivo di tutto ciò che potrebbe essere necessario fare per la pulizia dei dati, e non è nemmeno un elenco esaustivo di tutto ciò che viene catturato nel registro avanzato, ma questa è la cosa più importante qui a portata di mano. |
| Va bene, quindi andiamo nel nostro caso di studio utilizzando il file dei componenti che Mia ha introdotto e creiamo il nostro script di cura dei dati in JMP 16 utilizzando il registro avanzato. |
| Eccoci in JMP 16. Noterò che questa è l'ultima versione del programma early adopter per JMP 16, quindi questa è una pre-release. Tuttavia sono sicuro che sarà molto, molto simile alla versione di rilascio effettiva di JMP 16. |
| Quindi, per accedere al registro, |
| Te lo mostro qui. Questo sembra diverso se sei abituato al registro delle versioni precedenti di JMP. È diviso in questi due pannelli, |
| ok, un pannello dei messaggi in alto e un pannello dei codici in basso. Passeremo un po 'di tempo qui. Ti mostrerò com'è, ma ti diamo solo una rapida anteprima, se dovessi fare alcune attività veloci come importare un file e magari eliminare questa colonna. |
| Puoi vedere che quei due passaggi che ho fatto (l'importazione dei dati e l'eliminazione della colonna), sono elencati qui in questo pannello dei messaggi |
| e il codice, il codice JSL di cui abbiamo bisogno per uno script di cura dei dati riproducibile, si trova qui in basso in questo pannello inferiore. Va bene, quindi |
| che è davvero molto eccitante, la possibilità di avere solo questo codice e prenderlo ogni volta che ne hai bisogno semplicemente puntando e facendo clic è un enorme vantaggio in JMP 16. |
| Quindi, in JMP 16, questa nuova visualizzazione del registro migliorata è attiva per impostazione predefinita. Se vuoi tornare alla vecchia versione del registro, quel semplice registro di testo, puoi farlo qui nella sezione delle preferenze di JMP. C'è un nuovo |
| sezione per il registro e puoi tornare alla vecchia visualizzazione di testo del registro, se preferisci. L'impostazione predefinita quando installi JMP 16 è il registro avanzato e parleremo di alcune di queste altre funzionalità un po 'più avanti, più avanti nel nostro caso di studio. |
| Va bene, quindi vado a sgombrare |
| il registro per ora dal triangolo rosso. Cancella il registro e iniziamo con il nostro caso di studio. Importiamo i dati dei componenti che Mia stava condividendo con te. Inizieremo da questo file csv. |
| Così |
| Eseguirò il tipo più semplice di importazione semplicemente trascinandolo. Oh, ne avevo una ... ne avevo già una versione aperta. Mi dispiace, fammi iniziare chiudendo la vecchia versione |
| e cancella il registro ancora una volta. |
| Ok, importazione semplice |
| trascinandolo nella finestra di JMP. E ora abbiamo quel file, Componenti A, con 369 batch, e procediamo ora con le nostre attività di pulizia dei dati. Mi accendo |
| i grafici dell'intestazione. E la prima cosa che possiamo vedere è che la colonna della struttura ha solo una voce, un valore in essa, FabTech, quindi non ci sono variazioni, niente di interessante qui. Lo cancellerò con un clic destro, cancellerò la colonna. |
| E ancora, questo viene acquisito mentre procediamo nel registro avanzato. |
| Va bene, che altro? Immaginiamo che questa colonna del tasso di scarto alla fine della tabella sia davvero importante per noi e mi piacerebbe vederne una prima nella tabella. Lo sposterò in quarta posizione |
| afferrandolo nel pannello delle colonne e trascinandolo subito dopo il numero del cliente. Ci siamo. |
| Mia ha detto che questa colonna di umidità è rappresentata in modo errato all'importazione, principalmente a causa di quelle N / A |
| caratteri alfabetici che ne fanno entrare come variabile di carattere. Quindi aggiustiamolo. Entreremo nella colonna delle informazioni con il tasto destro qui |
| e cambia il tipo di dati da carattere a numerico, cambia il tipo di modellazione da nominale a continuo. Fare clic su OK. E facciamo semplicemente clic sul registro qui, e puoi vedere, ora abbiamo quattro passaggi che sono stati acquisiti e continueremo. |
| Va bene, qual è il prossimo? Abbiamo diverse variabili che devono essere cambiate da continue a nominali. Quelli sono numero di lotto, numero di parte e processo. Quindi, con i tre di quelli selezionati, farò clic con il pulsante destro del mouse e passerò da continuo a nominale. |
| E quelli sono stati tutti corretti. |
| E ancora, possiamo vedere che questi tre passaggi sono registrati qui nel registro. |
| Va bene, che altro? Qualcos'altro di un po 'cosmetico, questa colonna, Pressure. Ai miei ingegneri piace vedere il nome di quella colonna come PSI, quindi lo cambieremo semplicemente selezionando quella colonna e digitando PSI. Tab fuori da lì per andare da qualche altra parte. Anche questo verrà catturato nel registro. |
| Il fornitore. Mia ci ha mostrato che ci sono alcune ortografie incoerenti. Probabilmente troppi valori qui. Dobbiamo correggere i valori dei caratteri. Quando in una colonna sono presenti valori di carattere errati e incoerenti, pensa allo strumento di ricodifica. |
| Lo strumento di ricodifica è un modo davvero efficiente per risolvere questo problema. Quindi con il tasto destro del mouse sul fornitore, andremo a ricodificare. |
| E raggruppiamoli in modo appropriato. Inizierò con alcune opzioni del triangolo rosso. Convertiamo tutti i valori in maiuscole / minuscole, |
| tagliamo anche quello spazio bianco, in modo da correggere la spaziatura incoerente. Sono già stati risolti un paio di problemi. Correggiamo tutto il resto manualmente. Raggrupperò gli Anderson. Raggrupperò i Cox. |
| Raggruppa gli Hershes. Trutna e Worley hanno già ragione con una singola categoria. E l'ultima correzione che farò sono cose che sono, sai, solo elencate come vuote o mancanti, darò loro un esplicito |
| etichetta mancante qui. |
| Va bene, e quando facciamo clic su Ricodifica, |
| abbiamo apportato queste correzioni a una nuova colonna chiamata fornitore 2. |
| Questo ha solo 1, 2, 3, 4, 5, 6 categorie corrette e compresse. |
| Buono. |
| Va bene, facciamo un calcolo. Calcoleremo la resa qui, utilizzando la dimensione del lotto e il numero scartato. |
| Giusto. E sì, mi rendo conto che questo è un po 'ridondante. Abbiamo già un tasso di scarto e il rendimento è solo uno meno il tasso di scarto, ma solo per amor di discussione, ci esibiremo |
| il calcolo. Quindi voglio che la colonna del rendimento venga inserita subito dopo il numero scartato, quindi evidenzierò il numero scartato e poi andrò al menu delle colonne, sceglierò una nuova colonna. |
| Chiameremo questa cosa resa. |
| E inseriremo la nostra nuova colonna dopo la colonna selezionata, dopo il numero scartato, e diamo una formula per calcolare la resa. |
| Abbiamo bisogno del numero di buone unità. Sarà la dimensione del lotto meno il numero scartato. |
| Quindi questo è il numero di buone unità e divideremo l'intera cosa per |
| la dimensione del lotto. |
| Numero di unità valide diviso per la dimensione del lotto, questo è il nostro calcolo della resa. |
| E fai clic su OK. |
| C'è il nostro nuovo |
| colonna resa. Possiamo vedere che è un tasso di scarto meno uno. Questo è ... va bene e ignoriamo, per ora, il fatto che abbiamo dei rendimenti superiori al 100%. |
| Ok, abbiamo quasi finito. Solo qualche altro cambiamento. Ho notato che abbiamo due processi e, per ora, sono solo etichettati come processo 1 e processo 2. |
| Non è molto descrittivo, non molto utile. Diamo loro etichette più descrittive. Processo 1, chiameremo processo di produzione; e il processo 2, chiameremo sperimentale. Quindi lo faremo con le etichette dei valori, piuttosto che con la ricodifica. Entrerò nelle informazioni della colonna |
| e assegneremo le etichette dei valori a uno e due. |
| Uno in questa colonna rappresenterà la produzione. |
| Aggiungilo. |
| E due rappresenta sperimentale. |
| Aggiungilo. |
| Fare clic su OK. Buono. Mostra uno e due nei grafici dell'intestazione, ma qui nella tabella dei dati è di produzione e sperimentale. |
| Va bene, un ultimo passaggio prima di salvare il nostro script. Diciamo, per amor di discussione, che mi interessano solo i dati ... Voglio procedere con l'analisi solo quando il vuoto è spento. |
| Bene, quindi creerò un sottoinsieme dei dati e creerò una nuova tabella di dati che abbia solo le righe in cui il vuoto è disattivato. Lo farò facendo clic con il pulsante destro del mouse su una di queste celle che ha il vuoto |
| e selezionando le celle corrispondenti. |
| Questo seleziona le 313 righe in cui l'aspirapolvere è spento. E ora andremo al sottoinsieme di tabelle, |
| creare una nuova tabella dati, che chiameremo vac_off. |
| Fare clic su OK. |
| Va bene, e questa è la nostra nuova tabella di dati con 313 righe che mostrano solo i dati in cui il vuoto è disattivato. |
| Quindi questa è la fine. Abbiamo svolto tutta la nostra cura dei dati e ora torniamo indietro e rivisitiamo il registro e impariamo un po 'di più su ciò che abbiamo. |
| Ok, quindi tutti questi passaggi, e più alcuni altri che non avevo intenzione di fare, sono stati catturati qui nel registro. |
| Guarda qui, abbiamo ... ogni riga è uno dei passaggi che eseguiamo. |
| Ci sono anche alcune cose estranee, come ad un certo punto ho cancellato la selezione delle righe. Non avevo davvero bisogno di ... Non ho davvero bisogno di fare quella parte della mia sceneggiatura. |
| Cancellazione delle righe selezionate, quindi rimuoviamola. Farò solo clic destro su di esso e deselezionerò l'elemento per rimuoverlo. Quello è buono. |
| Ok, quindi messaggi quassù, codice JSL quaggiù. Vorrei richiamare la vostra attenzione sull'origine e sul risultato. Questo è abbastanza carino. |
| Ogni volta che facciamo un passaggio, ogni volta che facciamo un'azione per punto e clic, sai, c'è qualcosa su cui facciamo quell'azione e c'è qualcosa che risulta. Quindi questa è l'origine e il risultato. Quindi, ad esempio, quando abbiamo eliminato la colonna della struttura ... |
| beh, forse è un cattivo esempio ... scegliamo invece di cambiare le informazioni della colonna per l'umidità. L'origine, la cosa su cui l'abbiamo fatto |
| era la tabella dei componenti A, e vediamo quella qui elencata come tabella dei dati. Quando ci passo sopra, dice Porta i componenti A in primo piano, quindi facendo clic su di esso, sì, ci porta alla tabella Componenti A. Molto bella. |
| E il risultato è qualcosa che abbiamo fatto alla colonna dell'umidità. Abbiamo cambiato l'umidità. Lo abbiamo modificato in tipo di dati numerico e tipo di modellazione continuo. Guardalo quaggiù. |
| Quindi posso fare clic qui, andare alla colonna dell'umidità e ... si evidenzia, seleziona per noi. JMP seleziona per noi la colonna dell'umidità. |
| verde per ovunque, tranne quest'ultimo risultato in blu. Bene, questo ci aiuta a tenere traccia delle nostre attività su diverse tabelle di dati. Abbiamo svolto tutte queste attività sulla tabella dati dei componenti A. |
| e la nostra ultima attività, abbiamo eseguito un sottoinsieme sulla tabella dati Componenti A, il risultato è stata una nuova tabella dati chiamata vac_off. E così vac_off è in blu. Bene, quindi possiamo usare quei colori per aiutarti a tenere traccia delle cose. |
| Va bene, l'ultima caratteristica che voglio mostrarti qui nel registro è ... quella |
| utile è se hai una serie molto lunga di passaggi e devi trovarne solo uno, questa casella di filtro ti consente di trovare. Diciamo che voglio trovare il sottoinsieme. Eccolo. Abbiamo trovato la tabella dei dati del sottoinsieme e posso accedere direttamente al codice di cui ho bisogno. |
| Ok, quindi questo ... è tutto ciò di cui abbiamo bisogno. I nostri passaggi di cura dei dati sono stati acquisiti. Tutto ciò che dobbiamo fare per creare uno script per la cura dei dati riproducibile è andare sul triangolo rosso e salveremo lo script in una nuova finestra di script. |
| la fase di importazione, la fase di eliminazione della colonna, la fase di spostamento della percentuale di scarto. Tutti questi passaggi sono qui nello script. |
| Abbiamo la colorazione della sintassi per aiutarci a leggere lo script. Abbiamo tutti questi commenti utili che ci dicono esattamente cosa stavamo facendo in ciascuno di questi passaggi. |
| Bene, quindi questo è tutto. Questo è tutto ciò di cui abbiamo bisogno e lo salverò. Lo salverò sul desktop come importato e pulito ... chiamiamolo importazione e cura dei componenti. |
| Bene, questo è il nostro script riproducibile per la cura dei dati. Quindi, se dovessi tornare alla finestra principale di JMP e chiudere tutto tranne il nostro nuovo script, |
| ecco cosa facciamo se ho bisogno di riprodurre questi passaggi di cura dei dati. Ho appena aperto il file di script e possiamo eseguirlo facendo clic sul pulsante Esegui script. Apre i dati, esegue tutte le pulizie, esegue il sottoinsieme e crea quel nuovo file di dati con 313 righe. |
| Immaginiamo ora di doverlo riprodurre su nuovi dati. |
| Ho un'altra versione del file dei componenti. Si chiama Components B. Ha altre 50 righe, quindi invece di 369 righe, ha 419 righe. Immagina di aver eseguito il processo per altri 50 batch e di avere più dati. |
| Quindi si chiama Componenti B e voglio eseguire questo script sui componenti B. Ma noterai che in tutto lo script chiama i componenti A più volte. Quindi dovremo solo cercare e sostituire i componenti A e cambiarli in componenti B. Ecco fatto. Modificare. |
| Ricerca. |
| Troveremo i componenti A, sostituiti con i componenti B. Sostituisci tutto. 15 occorrenze sono state sostituite. |
| Puoi vederlo qui e qui. |
| E ora eseguiamo semplicemente nuovamente lo script, ed eccolo lì nella nuova versione dei dati. Puoi vedere che ha più righe, infatti, era spento. Prima era 313, ora è 358. |
| Va bene, quindi uno script di cura dei dati riproducibile che può essere eseguito su nuovi dati. |
| Ok, quindi ecco di nuovo quel cheat sheet. Questo sarà nei materiali che salveremo con il discorso, quindi puoi arrivare a questo e trovarlo. E questo ti dice solo come puntare e fare clic per farti strada attraverso la cura dei dati e lasciarti un bel script di cura dei dati riproducibile e riproducibile. |
| Quello script che abbiamo creato non ci ha richiesto di fare alcun codice, ma ti darò solo una manciata di suggerimenti, quattro suggerimenti che puoi usare |
| per migliorare un po 'gli script. Il primo consiglio è inserire questa riga all'inizio dei tuoi script. È una buona cosa da fare per tutti i tuoi script. Basta inserire i nomi di riga predefiniti qui. |
| Questo serve per evitare che il tuo script interagisca con altri script. Si chiama collisione dello spazio dei nomi e non devi davvero capire cosa fa, fallo e basta. È una buona cosa da fare. È una buona pratica di programmazione. |
| Il secondo suggerimento è assicurarsi che ci siano punti e virgola tra le espressioni JSL. |
| Il registro avanzato lo fa automaticamente. Inserisce il punto e virgola richiesto tra ogni passaggio. Tuttavia, se apporti tu stesso qualche modifica, dovrai assicurarti che quei punti e virgola siano posizionati correttamente. Quindi solo una parola al saggio. |
| aggiungi commenti. |
| I commenti sono un modo per lasciare note nel programma e lasciarle in modo da non rovinare il programma, giusto. È un modo per |
| lasciare qualcosa nel programma che non verrà interpretato dall'interprete JSL. E ci sono note che il registro migliorato ha lasciato per te ... la registrazione delle azioni nel registro di miglioramento è rimasta per te, ma puoi modificarle e aggiungerle, se lo desideri. Quindi ecco i punti principali sui commenti. |
| Il formato tipico è costituito da due barre e tutto ciò che segue le barre è un commento. Quindi puoi farlo all'inizio di una riga o anche alla fine della riga. Quindi l'interprete eseguirà questa espressione JSL X = 9, ma poi ignorerà tutto ciò che segue le barre. |
| Puoi anche, se hai un commento più lungo, puoi usare questo formato, che è un / * all'inizio e un * / alla fine. Che racchiude un commento. Quindi i commenti sono utili per lasciare note per te stesso, ma sono anche utili per il debug del tuo script JSL. |
| Se vuoi rimuovere una riga di codice e non eseguirla, puoi semplicemente anteporla con quelle due barre e, se vuoi farlo per una porzione più grande di codice, puoi usare questo formato. Così bello sapere come usare i commenti. |
| L'ultimo suggerimento che ti lascio è quello di generalizzare i riferimenti alle tabelle di dati. Ricordi come abbiamo dovuto cercare e sostituire per far funzionare quello script su un nuovo nome di file, Componenti B? |
| Abbiamo dovuto modificare 15 istanze nella tabella dei dati, nello script. Non sarebbe bello se dovessimo cambiarlo solo in una volta, invece di 15 volte? Quindi puoi rendere i tuoi script più robusti |
| generalizzando i riferimenti alle tabelle di dati. Invece di usare i nomi, useremo una variabile JSL per contenere quei nomi di tabella. Ecco di cosa sto parlando. Ti faccio vedere un esempio. |
| Sulla sinistra c'è un codice generato dalla registrazione delle azioni nel registro avanzato. |
| Stiamo aprendo la tabella dei dati di Big Class. Stiamo operando sulla colonna età, cambiandola in un tipo di modellazione continua e quindi stiamo creando una nuova colonna calcolata, |
| all'apertura, lo usiamo per eseguire la modifica sulla colonna dell'età e lo usiamo qui. |
| Molto semplice, quello che devi fare per renderlo più robusto e generalizzato. |
| Devi apportare tre modifiche. |
| Questa prima modifica qui, stiamo assegnando un nome. Ho scelto BC; puoi scegliere quello che vuoi. Vedrai DT molto. |
| Quindi BC è il nome con cui faremo riferimento a quella tabella di dati di Big Class nel resto dello script. E così quando vogliamo cambiare l'età |
| età indica la tabella dati BC e la colonna età in quella tabella dati. |
| Quaggiù, stiamo inviando un messaggio alla tabella dati Big Class, ed è questo il significato della sintassi della doppia freccia. Quindi lo stiamo solo generalizzando, lo stiamo generalizzando in modo da utilizzare il nuovo nome per inviare quel messaggio |
| alla tabella dati. E ora, se abbiamo bisogno di eseguire questo script su una nuova tabella di dati che abbia un nome diverso da Big Class, ecco l'unica modifica che dobbiamo apportare. Dobbiamo cambiare solo un punto della sceneggiatura. Non dobbiamo cercare e sostituire. |
| Ok, quindi dopo questi quattro suggerimenti, se sei pronto per portare il tuo script di cura al livello successivo, ecco alcuni passaggi successivi. Potresti aggiungere un selettore di file. Non ci vuole molto codice |
| per cambiarlo in modo che quando qualcuno esegue questo script, può semplicemente passare al file su cui vuole che venga eseguito invece di dover modificare lo script manualmente. |
| Quindi questa è una bella idea. Se desideri distribuire lo script ad altri utenti nella tua organizzazione, puoi racchiuderlo in un componente aggiuntivo JMP e in questo modo gli utenti possono eseguire lo script semplicemente scegliendolo da un menu all'interno di JMP. |
| Davvero utile. Infine, se è necessario eseguire questo script di cura in base a una pianificazione per aggiornare una tabella dati JMP master che si tiene in rete da qualche parte, è possibile utilizzare l'utilità di pianificazione in Windows o l'automator in Mac OS quello su un programma. |
| Quindi, in sintesi, Mia ha parlato di come curare i dati esplorando i dati e ripetendo per identificare i problemi. |
| Se automatizzi questi passaggi, otterrai i vantaggi della riproducibilità e quelli sono efficienza, precisione e documentazione del tuo lavoro. |
| Per fare ciò in JMP 16, è sufficiente puntare e fare clic come al solito e le fasi di cura dei dati vengono acquisite dalla registrazione dell'azione che si verifica nel registro avanzato. |
| Infine, puoi esportare e modificare il codice JSL dal registro avanzato per creare il tuo script di cura dei dati riproducibile. Questo conclude il nostro discorso. Grazie mille per il tuo tempo e la tua attenzione. |