| Oratore |
Trascrizione |
| Mandy |
Bene, benvenuti alla nostra discussione di oggi. Parliamo di tabelle. Mi chiamo Mandy Chambers e sono un'ingegnere di test principale del team di test di JMP. |
| |
E la mia collega e amica qui oggi è Kelci Miclaus. È una senior manager di Ricerca e Sviluppo nel team di scienze biologiche di JMP. |
| |
Kelci e io abbiamo iniziato a lavorare insieme qualche anno fa, quando Clinical Product stava iniziando a essere un grande consumatore di tutti i prodotti che mi capitava di testare. |
| |
Così ho avuto modo di conoscere abbastanza bene il suo gruppo e di lavorare a stretto contatto con loro su diverse cose che stavano cercando di implementare. |
| |
Per me è stato davvero prezioso poter vedere un'applicazione dal vivo in cui un cliente avrebbe realmente utilizzato le cose che avevo testato in JMP e come le avrebbe utilizzate nel prodotto clinico. |
| |
Quindi in passato abbiamo fatto questa presentazione. È molto più lunga e abbiamo deciso che la cosa migliore da fare qui era |
| |
ti fornisco l'intero documento. Ecco cosa è allegato a questa registrazione, insieme a due set di dati e file zip. Dovresti avere tabelle di dati, script, |
| |
Alcuni diari e diverse cose di cui hai bisogno, e potrai scorrere ciascuna delle applicazioni, anche se non te le mostro o Kecli non ti mostra qualcosa. Dovresti riuscirci. Quindi, lasciami iniziare condividendo il mio schermo qui. |
| |
Così potete vedere di cosa parlerò oggi. Come ho detto, se dovessi mostrarlo per intero, parlerei di come unire le tabelle e dei diversi modi in cui è possibile unirle. |
| |
E quindi questa è la parte su cui non entrerò nei dettagli, ma solo un semplice join di tabella. Se clicco qui, |
| |
Esecuzioni e argomenti per laptop. E sotto il menu delle tabelle, se sei nuovo su JMP o forse non l'hai mai fatto prima, |
| |
Puoi fare un join di tabella, e questo è un join fisico. Questo unirà le tabelle. Quindi unirei le corse dei laptop agli argomenti dei laptop. |
| |
In questa finestra di dialogo, selezioni gli elementi che vuoi unire. Puoi unirli per corrispondenza, per join cartesiano, per riga e poi unire la tabella. Non lo farò ora, solo per |
| |
consumo di tempo, ma è quello che faresti. E anche qui, sotto il menu delle tabelle, un'altra cosa di cui parlerei è il generatore di query JMP. |
| |
E questo permette di unire più tabelle. Se hai 3, 4, 5, 6 tabelle, puoi unirle e creare un'unica tabella che le contenga tutte. Ma ripeto, oggi non lo farò. |
| |
Quindi se io |
| |
torno qui e chiudo queste tabelle. |
| |
Cominciamo a spiegare come è nato il join virtuale. Parliamo prima di come unire le tabelle. |
| |
Devi decidere che tipo di join vuoi usare. Quindi... se le tue tabelle sono piccole, potrebbe essere più semplice eseguire un join fisico. Per fare semplicemente un join di tabelle, come le due tabelle che ti ho mostrato, non erano molto grandi. |
| |
Se si importano tre o forse quattro tabelle in più, JMP Query Builder è uno strumento meraviglioso per creare una tabella. |
| |
E potresti volere tutti i tuoi dati nella stessa tabella, quindi potrebbe essere proprio quello che ti serve. Devi solo fare attenzione allo spazio su disco. |
| |
e le prestazioni, e devi capire che se hai cinque o sei tavoli separati e poi li unisci fisicamente, stai creando delle copie duplicate. |
| |
Quindi questi sono i modi in cui potresti determinare quale utilizzare. Il join virtuale è stato introdotto in JMP 13 ed è stato aggiunto con la possibilità di |
| |
Prendi un collegamento, un ID di collegamento comune, e unisci più tabelle. È una sorta di concetto di unione senza unione. Risparmia spazio ed evita anche la duplicazione dei dati. |
| |
E così... nel 13 abbiamo iniziato con quello. E poi nel 14 e 15 abbiamo aggiunto altre funzionalità, richieste dai clienti. Collegamento di tabelle con sincronizzazione delle righe... sincronizzazione degli stati delle righe. È possibile abbreviare i nomi delle colonne. Abbiamo aggiunto la possibilità di aprire automaticamente le tabelle collegate. |
| |
Poter avere un ID link e un riferimento link nella stessa colonna. E abbiamo anche aggiunto questi piccoli suggerimenti al passaggio del mouse che vi mostrerò dove possono indicarvi qual è la sorgente della tabella sorgente della colonna. |
| |
Quindi queste sono le cose che abbiamo aggiunto e cercherò di spiegarvele e spiegarvele. Ho questi dati che ho effettivamente ottenuto da... |
| |
È solo un'azienda high-tech immaginaria. E i suoi dati sulle risorse umane includono informazioni come la retribuzione, l'organico, la diversità e la conformità. |
| |
storia dell'istruzione e altri fattori occupazionali. Quindi, se ci pensi, è un tipo di dati perfetto da collegare perché hai |
| |
di solito una variabile ID univoca, come l'ID di un dipendente o qualcosa che puoi collegare insieme e magari avere vari dati per il tuo team delle risorse umane che si trovano in posti diversi. |
| |
Quindi aprirò queste due tabelle e vi spiegherò semplicemente cosa fareste se cercaste di collegarle tra loro. |
| |
Quindi questa tabella è "Punteggi Dipendenti 1" e poi ho "Retribution Master 1" sul retro. Queste tabelle, "Punteggi Dipendenti 1", sono la mia tabella di origine. |
| |
E Compensation Master è la mia tabella di riferimento. Quindi potete vedere questi ID, questa variabile ID qui in questa tabella. Ed è anche nella tabella Compensation Master. |
| |
Quindi imposterò il mio ID link. Ci sono un paio di modi diversi per farlo. Puoi andare nelle proprietà della colonna. |
| |
E qui sotto puoi vedere un ID link e un riferimento. Il modo più semplice per farlo è cliccare con il tasto destro, quindi ecco l'ID link. |
| |
E se guardo qui, vedo che questa chiave ID è stata assegnata a quella colonna. |
| |
Quindi vado nella mia tabella principale dei compensi. E vado in questa colonna. E di nuovo, potete farlo con le proprietà della colonna. |
| |
Ma puoi farlo nel modo più semplice andando direttamente qui al riferimento del collegamento, la tabella ha l'ID. Quindi viene visualizzato in questo elenco. Ci clicco sopra ed ecco fatto, ecco il mio riferimento del collegamento. |
| |
icona proprio lì. E ora vedo che tutte le colonne che erano in questa tabella sono... sono disponibili in questa tabella. Come puoi vedere, hai un gran numero di colonne. |
| |
Puoi anche vedere qui che hai...sono nomi di colonna piuttosto lunghi, hai i nomi delle colonne, più questo identificatore qui che mostra che questa è una colonna di riferimento. |
| |
Quindi, eseguirò questa piccola e semplice tabella che ho salvato qui e vi mostrerò molto brevemente che questo è un report e solo per mostrarvi semplicemente che questa è una colonna virtuale sulla durata del servizio. |
| |
E poi il tipo di retribuzione fa effettivamente parte della mia tabella retributiva, mentre il genere è una colonna virtuale. Quindi sto usando... sto costruendo questo usando colonne virtuali e anche colonne che risiedono nella tabella. |
| |
Una cosa che volevo farti notare molto rapidamente è che sotto questo piccolo triangolo rosso...diciamo che stai lavorando con questi dati e decidi, |
| |
"Oh, vorrei davvero creare questa tabella. Vorrei davvero che tutte le colonne fossero in una sola tabella." C'è un piccolo strumento segreto chiamato "Unisci dati di riferimento". |
| |
E molte persone non sanno che questo è esattamente lì. Ma se volessi, potrei cliccarci sopra e unire tutte le colonne in |
| |
questa tabella. E così, ma per motivi di tempo, non lo farò adesso, ma volevo indicare dove si trova. |
| |
E lasciatemi mostrarvi di nuovo qui nel diario, molto velocemente. Questo è possibile con lo scripting, quindi potete impostare il riferimento al collegamento della proprietà e puntare alla vostra tabella e |
| |
elenco per utilizzare le colonne di collegamento. Quindi chiuderò questo molto velocemente e poi tornerò alla stessa applicazione in cui avevo effettivamente |
| |
Stesse due tabelle in cui ho salvato alcuni script extra, un paio di cose in più che voglio mostrare. Quindi, di nuovo, ho i punteggi dei dipendenti. Questa è la mia tabella di origine. |
| |
E poi ho il Compensation Master, e sono già collegati, e potete vedere questo qui. Quindi voglio rieseguire quella tabella e voglio mostrarvi una cosa. |
| |
Come potete vedere, i nomi delle colonne ora sono più corti. Voglio quindi mostrarvi cosa abbiamo aggiunto in JMP 14. Se faccio clic con il pulsante destro del mouse e apro la finestra di dialogo delle informazioni sulla colonna, |
| |
Vedo che qui c'è scritto "Usa nomi di colonne collegate". Questo fa sì che questi nomi siano più brevi. |
| |
E questa è davvero una bella caratteristica perché quando, alla fine della giornata, condividi questo report con qualcuno, a lui non importa davvero dove siano le colonne |
| |
Provenienti, che si trovino nella tabella principale o in quella virtuale. Quindi, si tratta di un report chiaro e chiaro. Lo script viene salvato in modo che sia possibile vedere al suo interno che... |
| |
Salva lo script che mostra una tabella di riferimento. Quindi, se guardo questo, posso vedere. Quindi sapresti da dove proviene questa colonna, ma |
| |
Non è necessario che qualcuno con cui stai condividendo lo sappia. Quindi voglio mostrarti quest'altra cosa che abbiamo aggiunto con questa distribuzione degli stati di riga. |
| |
Un esempio veloce: sto per eseguire questa distribuzione. E noterete subito che in questa distribuzione c'è un titolo che dice che questi numeri sono sbagliati. |
| |
E quindi lasciatemi spiegare di cosa sto parlando. I punteggi dei dipendenti sono la tabella del mio database dei dipendenti e ne contiene circa 3.600. |
| |
Questo è un riferimento univoco ai dipendenti ed è un database attuale dei dipendenti, diciamo. La mia tabella principale delle retribuzioni è più simile a una tabella storica e contiene 12.000 |
| |
righe al suo interno, quindi potenzialmente in questa tabella ci sono più riferimenti allo stesso dipendente, diciamo che un dipendente ha cambiato lavoro e ha ottenuto un aumento, oppure si è trasferito. |
| |
Oppure potrebbe avere dipendenti che non sono più in azienda. Quindi, eseguendo questo report da questa tabella |
| |
Non fornisce le informazioni che cerco veramente. Vedo qui sotto che il mio conteggio è sbagliato, ho conteggi più alti, non ho esattamente quello che cercavo. |
| |
Questo è uno dei motivi per cui abbiamo creato questa sincronizzazione degli stati di riga e Kelci ne parlerà un po' più approfonditamente anche in un'applicazione pratica. |
| |
Ma vi mostrerò semplicemente come impostare l'invio degli stati di riga. Quello che sto facendo è semplicemente un batching, |
| |
indicatore di colore di selezione. E quello che sto facendo è inviare dal master di compensazione ai punteggi dei dipendenti, |
| |
Invio le informazioni a questa tabella perché (mi dispiace) è la tabella da cui voglio che vengano elaborate le mie informazioni. |
| |
Quindi, se torno indietro e rieseguo quella distribuzione, ora ho questa distribuzione (con colonne leggermente diverse), ma ho questa distribuzione. E se guardo i numeri qui, |
| |
Ho i numeri esatti del mio database dipendenti. Ed è esattamente quello che volevo vedere. Quindi bisogna fare attenzione con l'invio e l'accettazione, e Kelci ne parlerà più approfonditamente. Ma questo era solo un semplice esempio di come si farebbe. |
| |
E vi mostrerò molto velocemente che c'è un collegamento alla Guida in linea che mostra |
| |
Un esempio di unione virtuale di colonne e visualizzazione degli stati delle righe. Ti guiderà passo passo. Ci sono anche altri esempi qui. |
| |
sull'utilizzo del virtual join. Se hai bisogno di maggiori informazioni sulla configurazione, ricorda che tutto questo è programmabile. Puoi quindi programmarlo qui, impostando gli stati delle righe e le diverse opzioni che desideri. |
| |
Quindi, passando a JMP 15, abbiamo aggiunto un paio di cose. Abbiamo aggiunto la possibilità di aprire automaticamente una tabella e anche di passare il mouse sulle colonne per capire da dove provengono. E vi spiegherò esattamente cosa significa. |
| |
Quindi, se clicco su queste... Abbiamo creato delle nuove tabelle per JMP 15, employeemaster.jmp, che fa ancora parte di questi dati HR. Quindi, se approfondisco un po' e guardo, un paio di cose che vorrei sottolineare su questa tabella. |
| |
Ha un ID collegamento e un riferimento collegamento. E questa è stata l'altra novità che abbiamo aggiunto a JMP 15: la possibilità di avere un ID collegamento e un riferimento collegamento sulla stessa colonna. |
| |
Quindi se guardo qui e vado a guardare la finestra di casa, vedo che ci sono altri due tavoli aperti. Si sono aperti automaticamente per me. |
| |
Quindi li aprirò perché in un certo senso voglio metterli in fila così potete vedere come funziona. Ma questa tabella principale dei dipendenti è collegata a |
| |
a... impilateli uno sopra l'altro... è collegato alla tabella della cronologia degli studi, che a sua volta è stata collegata alla mia tabella di fine studi prevista. E potete vedere |
| |
C'è un ID dipendente che ha un riferimento al link e l'ID del link, ID dipendente qui. Stessa cosa, e poi la determinazione della previsione ha solo un ID. |
| |
E se avessi altre tabelle o due con dati univoci relativi agli ID dei dipendenti e dovessi importarli, potresti continuare la stringa assegnando un riferimento di collegamento qui e continuare a lavorare. Quindi... giusto per mostrartelo velocemente, se clicco con il tasto destro e guardo questa colonna qui, |
| |
Vedo che il mio ID link è impostato, così come il mio riferimento link. E mi dice che la cronologia degli studi è una tabella a cui questa tabella è collegata. |
| |
L'ho impostato su apertura automatica e ho impostato i nomi più brevi. Non sto distribuendo gli stati delle righe, quindi non è impostato nulla. Quindi tutte le colonne presenti in queste altre due tabelle sono disponibili per la mia tabella di riferimento, chiamata employee master. |
| |
E molto rapidamente, puoi vedere che hai a disposizione un gran numero di colonne, e le colonne dei collegamenti vengono visualizzate come colonne raggruppate qui sotto. |
| |
Quindi un'altra domanda che ci è stata posta dai clienti, come si suol dire, è: c'è un modo per dirci da dove provengono queste colonne? |
| |
Quindi è un po' più chiaro? Abbiamo aggiunto questo piccolo suggerimento. Se passo il mouse sopra |
| |
Questo, questo mi dice che questo particolare flag di invalidità di colonna proviene da una terminazione prevista. Quindi in realtà proviene dall'ultima tabella della mia serie. |
| |
E se vado qui e clicco su uno di questi, dice che il codice del corso di laurea proviene dalla cronologia dell'istruzione. |
| |
Quindi questa è una bella funzionalità che ti aiuterà nella scelta delle tue colonne, magari per quanto riguarda ciò che stai cercando di realizzare con le piattaforme e così via. |
| |
Ma se eseguo questa distribuzione, questo è solo un semplice esempio di distribuzione che mostra il livello del dipendente |
| |
proviene in realtà dalla mia tabella principale dei dipendenti. Questa descrizione del titolo di studio proviene dalla tabella della cronologia degli studi e questa valutazione delle prestazioni proviene dalla mia tabella di licenziamento predittivo. E poi puoi cercare ancora un po' con |
| |
alcuni di questi altri esempi che sono qui. Ho costruito |
| |
Una finestra contestuale di dashboard qui mostra un generatore di grafici che mostra un box plot. Abbiamo una distribuzione qui, una tabella e una mappa termica, |
| |
Utilizzando tutte le colonne virtuali, alcune, sai, alcune colonne che provengono dalla tabella, ma anche le colonne virtuali hanno un filtro. Quindi, se voglio guardare le donne e i professionisti. |
| |
Mi piace sempre sottolineare le stranezze qui. Quindi, se entro e guardo questi due piccoli posti che sembrano essere sparsi qui, trovo che sia molto interessante perché i rapporti di compenso mostrano come vengono pagate le persone. |
| |
In pratica, se vengono pagati nella giusta proporzione o meno, è in linea con la descrizione del loro lavoro. E sembra che questi due valori anomali siano |
| |
superando costantemente le aspettative, sembra che siano sottopagati. Proprio come questo qui sopra. |
| |
è tutto di per sé e sembra che raramente soddisfino le aspettative, ma potrebbero essere leggermente sovrapagati e/o potrebbero esserci degli errori. In ogni caso, concentrandosi su questi aspetti, si può anche vedere che le selezioni vengono fatte. |
| |
Qui. Quindi, in questa mappa termica, posso dire che ci sono alcuni soldi spesi per le prestazioni e per la formazione. Quindi forse è il caso di formare quella persona. Quindi è davvero bello vedere |
| |
Quindi è così |
| |
Più o meno tutto quello che volevo mostrare. Volevo solo mostrare questa cosa, solo per ricordare, solo per ribadire. La cronologia degli studi ha accesso alle colonne che sono in fase di conclusione prevista. |
| |
E così queste due tabelle possono comunicare tra loro separatamente. E se eseguo questo script grafico, |
| |
Ho una spesa simile per prestazioni e formazione, ma in questo caso considero la media dei voti, la posizione in classifica e dove le persone rientrano nei limiti, utilizzando combinazioni di colonne tratte solo da quelle due tabelle. |
| |
Quindi lo condividerò. Credo che fosse la maggior parte di ciò che volevo condividere. Smetterò di condividere il mio schermo. E lo condividerò con Kelci, che da qui in poi se ne occuperà lei. |
| Kelci J. Miclaus |
Grazie, Mandy. |
| |
Mandy ha detto che abbiamo già fatto questo discorso un paio di volte e che, in realtà, è stato questo sforzo combinato di |
| |
io lavoro nel mio gruppo, che si occupa di scienze della vita per le soluzioni verticali JMP Clinical e JMP Genomics, |
| |
e trovando esempi perfetti di come avrei potuto davvero sfruttare le unioni virtuali e lavorando a stretto contatto con il team di sviluppo su come queste funzionalità sono state rilasciate nelle ultime versioni di JMP. |
| |
In questa sezione esaminerò alcuni esempi specifici della nostra ricerca clinica e illustrerò come abbiamo sfruttato al meglio l'idea della tabella parlante per la sincronizzazione dello stato delle righe. |
| |
Quindi, come ha detto Mandy, questo è ora, e se avremo tempo verso la fine, questa, questa idea di unioni virtuali con sincronizzazione dello stato delle righe è ora l'intera architettura che guida il modo in cui vengono utilizzati i report e le revisioni di JMP Clinical |
| |
per valutare l'efficacia e la sicurezza iniziali e i report degli studi clinici con i nostri clienti. E uno dei motivi per cui si adatta così bene è la formattazione tipica dei dati degli studi clinici. |
| |
Quindi l'esempio di dati che userò per tutti gli esempi che ho sulla sincronizzazione dello stato di riga o sulla propagazione dello stato di riga, come a volte la chiamo, |
| |
Sono dati di esempio tratti da uno studio clinico che ha coinvolto circa 900 pazienti. Si è trattato di uno studio clinico reale, condotto circa 20-30 anni fa. |
| |
esaminando l'emorragia subaracnoidea e il trattamento con nicardipina in questi pazienti. |
| |
Il bello dei dati clinici è che lavoriamo con strutture di dati normalizzate molto standard, il che significa che ogni componente di una sperimentazione clinica viene raccolto, in modo simile ai dati sulle risorse umane che Mandy ci ha mostrato...ci ha mostrato...ci ha mostrato |
| |
è normalizzato, in modo che ogni tabella abbia il suo contenuto e possiamo monitorarlo separatamente, ma poi utilizzare join virtuali per creare storie complete. |
| |
Quindi i tre set di dati che esaminerò sono questa tabella demografica che contiene circa poco meno di 900 pazienti |
| |
degli studi clinici, dove qui abbiamo una riga per paziente nel nostro studio clinico. Questa è la demografia, che conterrà informazioni su nascita, età, sesso, etnia, trattamento ricevuto e eventuali eventi specifici accaduti durante lo studio clinico. |
| |
Allo stesso modo, possiamo avere tabelle separate. Quindi, in uno studio clinico, in genere vengono raccolti a ogni visita gli eventi avversi accaduti a un paziente durante un nuovo |
| |
farmaco o studio. E quindi questa è una tabella che contiene circa 5.000 record. Abbiamo ancora questo identificativo univoco del soggetto, ma ovviamente abbiamo dei duplicati. Quindi questa tabella registra ogni evento o evento avverso. |
| |
che è stato riportato per ciascuno dei pazienti nel nostro studio clinico. E infine, userò anche un set di dati di laboratorio, |
| |
che segue anche lo stesso tipo di formato di registrazione accatastata che abbiamo visto per gli eventi avversi. |
| |
Stiamo pensando alle visite regolari, in cui vengono effettuate diverse misurazioni di laboratorio e possiamo monitorarle nel corso della sperimentazione clinica per individuare anomalie e cose del genere. |
| |
Queste tre tabelle rappresentano quindi un formato standard normalizzato di quello che viene definito lo standard internazionale CDISC per i dati degli studi clinici. |
| |
E si adatta perfettamente all'utilizzo del join virtuale. Come ha detto Mandy, è facile, sai, creare una tabella di unione di laboratori. |
| |
Ma qui abbiamo 6.000 record di laboratori e unirli nella nostra demografia causerebbe una duplicazione di tutte le singole istanze delle loro descrizioni demografiche. Quindi vogliamo creare un'unione virtuale con questi, cosa che possiamo fare molto facilmente. |
| |
Se creiamo una tabella demografica, imposteremo un identificatore univoco dell'argomento come ID collegamento. |
| |
E poi molto rapidamente, perché in genere vorremmo guardare i risultati di laboratorio e usare qualcosa come il gruppo di trattamento a cui si trovano per vedere se ci sono differenze nei laboratori, |
| |
Ora possiamo fare riferimento a tali dati e creare visualizzazioni o report che valuteranno ed esamineranno effettivamente le differenze tra i gruppi di trattamento nei nostri risultati di laboratorio. |
| |
E quindi non abbiamo dovuto effettuare l'unione. Abbiamo semplicemente ottenuto l'accesso a questa... colonna "Planning Arm" dalla nostra tabella demografica tramite quella semplice configurazione in due passaggi delle proprietà della colonna di un join virtuale. |
| |
È anche molto facile osservare le anomalie di laboratorio. Ecco quindi un grafico per ciascuno dei diversi gruppi di trattamento o gruppi di pazienti che hanno avuto valori di laboratorio anormalmente elevati durante le visite di uno studio clinico. |
| |
Potremmo anche voler fare lo stesso tipo di analisi con il nostro evento avverso, per vedere se ci sono diverse occorrenze negli eventi avversi |
| |
tra questi gruppi di trattamento. Quindi, ancora una volta, possiamo collegare questa tabella alla nostra demografia di riferimento e creare molto rapidamente i conteggi della distribuzione degli eventi avversi che si verificano separatamente per, ad esempio, la nicardipina, il trattamento attivo, rispetto al placebo. |
| |
Ora vogliamo che parlino davvero. I prossimi due esempi che voglio mostrare con questi dati riguardano le opzioni di sincronizzazione dello stato delle righe che abbiamo. |
| |
Quindi avete visto rapidamente dalla parte di Mandy che ha mostrato che nelle proprietà delle colonne ora abbiamo la possibilità di sincronizzare gli stati delle righe tra le tabelle. |
| |
Ecco perché il nostro sistema si chiama "tabelle parlanti", perché è così che ora possono comunicare. È possibile inviare gli stati delle righe, ovvero la tabella a cui è stato impostato il riferimento a un ID di collegamento può inviare informazioni da quella tabella alla tabella con il suo ID di riferimento. |
| |
E vi farò un rapido esempio, ma come detto...come detto da Mandy, questo è di gran lunga il più |
| |
A volte può essere pericoloso perché è molto facile imbattersi in momenti in cui si ottengono risultati inconcludenti, ma mostrerò un caso in cui funziona e in cui è utile. |
| |
Come avrete notato, solo da questa analisi, ad esempio con gli eventi avversi, è stato molto semplice, come nella tabella per la quale abbiamo impostato un collegamento di riferimento (la tabella ID), accedere alle colonne e osservare le differenze tra i gruppi di trattamento in questa tabella. |
| |
Non c'è davvero nulla che vada nel senso opposto, però. Come aveva detto Mandy, non si vorrebbe usare questa nuova tabella di join per esaminare la distribuzione, ad esempio, di quel gruppo di trattamento, |
| |
perché quello che hai qui sono numeri che non corrispondono. Sembra che ci siano 5.000 soggetti, quando in realtà, se torni al nostro |
| |
tabella demografica, ne abbiamo meno di 900. Quindi ecco la vera distribuzione di circa 900 soggetti per gruppo di trattamento |
| |
con tutte le altre distribuzioni. Ora, però, arriva il momento in cui questa tabella è quella che vuoi usare come tabella di analisi o l'obiettivo da cui vuoi creare un'analisi. |
| |
E vuoi ricavare informazioni da quelle tabelle che sono virtualmente collegate ad esso. Il laboratorio, ad esempio, e gli eventi avversi. |
| |
Quindi qui useremo questa tabella per creare una visualizzazione che annoterà questi soggetti in questa tabella insieme a chiunque abbia avuto un test di laboratorio anomalo o un evento avverso grave. |
| |
E ora ho barato, perché ho preparato questi dati. Lo noterete nei miei dati sugli eventi avversi. |
| |
Ho già effettuato l'analisi per trovare eventuali casi di soggetti che hanno avuto...qualsiasi evento avverso considerato grave e ho utilizzato il marcatore di stato della riga per annotare quei record che hanno avuto...sono stati un evento avverso grave. |
| |
Allo stesso modo, nel set di dati dei laboratori, |
| |
Ho usato il colore rosso per annotare...annotare tutti i risultati di laboratorio che erano |
| |
Anormalmente alto. Quindi, ad esempio, possiamo vedere tutti quelli che presentavano anomalie elevate. Ho colorato in rosso la maggior parte di questo, selezionando lo stato della riga e poi controllando gli stati della riga. |
| |
Quindi con questi dati in cui ho questi due stati di riga in atto, possiamo tornare alla nostra tabella demografica |
| |
e creare una vista |
| |
Si tratta di una distribuzione per sede delle età dei nostri pazienti in uno studio clinico. |
| |
Ora, se torniamo a ciascuna delle tabelle collegate, possiamo controllare l'inserimento di queste informazioni annotate con la sincronizzazione dello stato delle righe. |
| |
Quindi cambieremo questa opzione da "stati di riga con tabella di riferimento" a "nessuno", a "dispacciamento effettivo" e in questo caso voglio fare attenzione. L'unica cosa che voglio che questa tabella comunichi alla tabella di riferimento dei link è un set di marcatori. |
| |
Farò clic su Applica |
| |
Noterete automaticamente che la visualizzazione che ho creato da quella tabella demografica ora contiene i marcatori di tutti i soggetti che hanno subito un evento avverso da quell'altra tabella. |
| |
Ora possiamo fare lo stesso con i laboratori. |
| |
Scegli di spedire. In questo caso, vogliamo spedire solo il colore. |
| |
Ora, semplicemente controllando le proprietà delle colonne, siamo arrivati al punto in cui abbiamo una visualizzazione o un'analisi basata sulla nostra tabella demografica che ha ottenuto l'accesso alle informazioni da queste tabelle virtualmente unite utilizzando la sincronizzazione o la propagazione dello stato delle righe di invio. |
| |
Davvero fantastico. Penso che sia una funzionalità davvero potente. Ma ci sono un sacco di insidie e cose a cui dovresti fare attenzione con l'opzione di invio. |
| |
Vale a dire, l'intero modo in cui funzionano le unioni virtuali è |
| |
la tabella degli ID dei collegamenti, la data...la tabella dei dati che hai impostato, in questo caso la demografia, è una riga per ID e la stai utilizzando per unire o unire virtualmente in un |
| |
tabella dati che contiene molte copie di quell'ID di utilizzo. Quindi stiamo creando una relazione uno-a-molti; va bene. Dispatch crea una relazione molti-a-uno. |
| |
conversazione. Quindi nel documento abbiamo un...nella risorsa fornita con questo video, c'è molto |
| |
commento sull'uso attento di questo strumento. Non dovrebbe essere qualcosa di altamente interattivo. |
| |
Se poi decidi di cambiare lo stato delle righe, può essere molto facile che questo diventi confuso o insensato, |
| |
che, diciamo, se avessi contrassegnato entrambi con il colore e il pennarello, non saprebbe cosa fare perché alcune righe potrebbero dire "Colora questo di rosso", |
| |
Ma l'altra tabella collegata potrebbe dire di colorarla in blu o in nero. Quindi bisogna fare molta attenzione a non mischiare e abbinare, e a non essere troppo interattivi con l'idea di fusione molti-a-uno. |
| |
Ma in questo esempio si è trattato di uno strumento davvero molto prezioso che avrebbe richiesto un notevole lavoro di manipolazione dei dati per arrivare a questo punto. |
| |
Quindi concluderò questi esempi di dispatch virtual join e passerò a ciò che probabilmente verrà utilizzato più comunemente: accept... |
| |
stato della riga di accettazione delle tabelle di dialogo del join virtuale. E in questo caso, lo farò effettivamente con uno script. Quindi, invece di guidarmi interattivamente attraverso il join virtuale e |
| |
proprietà delle righe, stati e colonne. Daremo un'occhiata ai risultati di questo scripting. |
| |
E l'esempio qui, quello che volevamo fare, è essere in grado di utilizzare queste tre tabelle (di nuovo, la demografia, gli eventi avversi e i dati di laboratorio in una sperimentazione clinica) per creare realmente quello che chiamano un |
| |
profilo di sicurezza completo. Ed è proprio questa la giustificazione e il fondamento logico del nostro utilizzo in JMP Clinical per i nostri clienti. |
| |
L'idea è che vogliamo essere in grado di prendere questi set di dati, tenerli separati ma consentire che vengano utilizzati in un'unica analisi completa in modo che non vengano percepiti come separati. |
| |
Con questo esempio, vogliamo poter aprire la nostra tabella demografica e impostarla come ID link. È simile a quello che ho appena fatto in modo interattivo, che creerà la tabella demografica e la proprietà della colonna ID link sull'identificatore univoco dell'oggetto. |
| |
Abbiamo finito. Vedete la legenda che mostra che questa è ora la proprietà ID collegamento. Ora vogliamo aprire il set di dati di laboratorio. |
| |
Imposteremo una proprietà sull'identificatore univoco dell'argomento in quella tabella per utilizzare il riferimento al collegamento alla tabella demografica. |
| |
E un paio di opzioni qui. Vogliamo dimostrare la proprietà di usare nomi più brevi. Utilizziamo il nome della colonna collegata per abbreviare il nome del nostro |
| |
Colonne provenienti dalla tabella demografica nella tabella dei laboratori. E qui vogliamo impostare la sincronizzazione dello stato delle righe come accettazione di "select", "exclude" e "hide". |
| |
E lo faremo anche per la tabella AE. Quindi eseguirò entrambi i prossimi frammenti di codice, |
| |
che aprirà il mio AE e la mia tabella di laboratorio. E ora vedrai che invece di quella spedizione le proprietà qui sono impostate su accetta |
| |
Con queste opzioni seleziona, escludi e nascondi. Allo stesso modo, la tabella degli eventi avversi ha esattamente la stessa accettazione. Quindi, in questo caso, invece di questa invio, che abbiamo fatto molta attenzione a inviare solo |
| |
Un tipo di stato di riga da una tabella e un altro da un'altra tabella, che ritornano alla nostra tabella di riferimento degli ID collegamento. Qui lasceremo che la demografia della nostra tabella di riferimento degli ID collegamento trasmetta ciò che le accade. |
| |
alle altre due tabelle. Ed è proprio questo che fa accept. Quindi accetterà gli stati di riga dalla tabella demografica. |
| |
E ho barato un po', in realtà ho solo uno script allegato alla nostra tabella demografica qui |
| |
in realtà si tratta solo di impostare alcune delle visualizzazioni che ho già mostrato, ovvero script allegati a ciascuna tabella in un'unica finestra. |
| |
Ecco quindi quello che potrebbe essere considerato il suo profilo di sicurezza. Abbiamo la distribuzione delle informazioni demografiche dei pazienti. Queste provengono dalla tabella demografica. |
| |
Si vedono i numeri corretti dei conteggi dei 443 pazienti trattati con placebo rispetto ai 427 trattati con nicardipina. |