Colonna Formula che utilizza i dati di altre righeCIAO! Ho una tabella di dati in stile database che memorizza i dati da una serie di passaggi del processo. Ogni riga rappresenta un campione di una determinata fase del processo e in tale riga è presente un riferimento al campione padre. Il campione principale proviene dallo stesso materiale, ma nella fase di processo precedente. Sto principalmente interagendo con questa tabella di database tramite un jmpapp, quindi lo scripting è un modo accettabile per manipolare i dati.
All'interno di questa tabella, desidero calcolare alcuni parametri su ciascun campione, incluso il modo in cui tale campione è cambiato rispetto al campione principale. Alcuni di questi parametri potrebbero essere calcolati come:
dati misurati dal bambino * dati misurati dal genitore .
Altri parametri potrebbero essere calcolati come segue (dove il valore calcolato dal genitore sarebbe simile all'equazione precedente):
dati misurati dal bambino * valore calcolato dal genitore
Ho una soluzione attualmente funzionante per questo, ma è molto lenta e richiede molte chiamate a "Rerun Formule".
Quindi, prima di descrivere la mia soluzione attuale, vorrei ricevere alcuni consigli sui modi migliori per ottenere questo risultato. Forse sto andando sulla struttura dei dati nel modo sbagliato! Se possibile, sarebbe fantastico se potessi mantenere i calcoli all'interno di questa tabella.
Di seguito è riportata un'immagine che mostra l'attuale struttura dei dati e come devono essere trasmessi in cascata da genitore a figlio per eseguire tutti i calcoli corretti.
Grazie per l'aiuto!

Oggetto: Formula di colonna che utilizza i dati di altre righeLe statistiche di riepilogo delle colonne nell'editor delle formule possono accettare una o più variabili di raggruppamento.
Col Mean( :Parent Data, :ParentID )
Ti darà la media per i dati in Parent Data raggruppati per ParentID.
Oggetto: Formula di colonna che utilizza i dati di altre righeVedi questo link usando un'istruzione where con row() e pedici
Corrispondenza indice JMP
Ma diventa complicato quanto più provi ad usarlo... Trovo che per cose come questa sia più veloce/facile usare semplicemente Excel e scrivere uno script di dati di importazione.
Oggetto: Formula di colonna che utilizza i dati di altre righe@Peter_Hersh , sì, ha senso ed è così che lo sto facendo attualmente. Funziona bene, ma a causa del modo in cui ho raggruppato i dati, attualmente sto scorrendo diversi sottoinsiemi di dati, il che richiede molto tempo. Inoltre, sarebbe bello se le colonne dei dati padre si aggiornassero ogni volta che le righe padre vengono aggiornate, motivo per cui speravo si potesse usare una formula di colonna. Se devo attenermi alla soluzione di sottoinsieme e aggiornamento, potrei utilizzare uno script "Prolifera i dati dei genitori" nella tabella o qualcosa del genere.
@DonMcCormack , Le relazioni padre/figlio vengono definite semplicemente utilizzando la colonna "ParentID". Ogni riga include l'ID campione e l'ID genitore, quindi essenzialmente i bambini devono cercare i genitori nella catena per trovare i dati di cui hanno bisogno.
Ho scoperto che è possibile utilizzare una formula di colonna simile a questa per ottenere i dati principali, ma queste formule devono essere eseguite più volte in modo che i dati possano scorrere a cascata attraverso le righe/colonne dipendenti. Nell'esempio nella prima tabella, la prima volta che la formula viene eseguita, i dati da :Data verranno popolati in :ParentData, ma la colonna :ParentData/ParentData verrà lasciata vuota perché la formula è stata eseguita prima che i dati fossero popolati. O.. .qualcosa del genere almeno.
Grazie per i tuoi pensieri!
dt = CurrentDataTable();
parent = :ParentID;
rows = dt << GetRowsWhere(:SerialNumber == parent);
Mean(Column(dt, "LayersMPAFraction")[rows]);
Oggetto: Formula di colonna che utilizza i dati di altre righeCome state definendo le relazioni Genitore/Figlio? Sarebbe difficile trovare una soluzione solida senza saperlo prima. Uno sguardo alla soluzione originale potrebbe aiutare.
Oggetto: Formula di colonna che utilizza i dati di altre righeOK, il trucco che penso funzionerebbe bene è quello di creare un sottoinsieme dei dati originali con solo l'ID principale e la colonna dei dati principali.Quindi uniscilo di nuovo ai dati originali.Corrispondenza dell'ID genitore con l'ID figlio.Spero che sia chiaro.Fammi sapere se non è chiaro
Oggetto: Formula di colonna che utilizza i dati di altre righeGrazie @Peter_Hersh !
Data la mia descrizione, sì Lag funzionerebbe bene, ma hai ragione in quanto i dati non sono sempre strutturati in questo modo. I dati figlio e padre possono essere contenuti in un numero diverso di righe, a varie distanze dalle nuove celle. Ad esempio, potrei avere 3 righe di dati per l'ID campione A, che vorrei includere in media in tutte le righe del bambino. E potrebbero esserci più figli per lo stesso genitore.
Sembra che abbia semplificato eccessivamente il mio esempio ahah. Forse l'altro modo a cui hai accennato potrebbe aiutare?
Oggetto: Formula di colonna che utilizza i dati di altre righe@mringqui , Sì, fare questo non dovrebbe essere un problema usando la funzione Lag all'interno del generatore di formule.Non sono sicuro che la tua struttura dati sia sempre così.C'è un modo per farlo in modo diverso se la distanza tra genitori e figli non è sempre la stessa.
Oggetto: Formula di colonna che utilizza i dati di altre righeQualcuno ha qualche idea?