trova il primo elemento con condizione in una colonnaCiao, ho un dato con 2 colonne: gruppo e punteggio, e voglio calcolare la colonna 3 chiamata per prima, che restituisce il "primo punteggio per gruppo che non è 10000000000. quindi in questi dati di esempio, gruppo a = 0, gruppo b = 53 e poiché il gruppo c contiene solo 10000000000, non viene visualizzato nulla.
Qualcuno potrebbe aiutarmi con una formula jmp per questa colonna ma non jsl? Grazie mille!
| gruppo | Punto | primo |
| un | 10000000000 | 0 |
| un | 0 | 0 |
| un | 100 | 0 |
| un | 10000000000 | 0 |
| un | 8 | 0 |
| un | 10000000000 | 0 |
| un | 10000000000 | 0 |
| un | 10000000000 | 0 |
| b | 53 | 53 |
| b | 10000000000 | 53 |
| b | 1 | 53 |
| c | 10000000000 | . |
| c | 10000000000 | . |
| c | 10000000000 | . |
AnalyticsRi: trova il primo elemento con condizione in una colonnaEcco un modo per scrivere la formula
curgroup = :group;
value = :score[Min(
Current Data Table() << get rows where(
:group == curgroup & :score != 10000000000
)
)];
Ri: trova il primo elemento con condizione in una colonnaCiao Jim, grazie per la risposta. L'ho incollato nella formula e ho sostituito il nome della colonna, ma non ha prodotto la risposta giusta. Potresti aiutarmi a controllare lo screenshot qui sotto? Grazie.
Ri: trova il primo elemento con condizione in una colonnaIl dump dello schermo della formula non mi consente di vedere se stai facendo riferimento alle colonne correttamente.Cioè, stai mettendo un ":" davanti ai nomi delle colonne, ma non davanti a curgroup e value?
Quali messaggi di errore ricevi?
Quando dici che non funziona correttamente, cosa significa?Non si ottengono i valori corretti o non si ottengono risultati?
Ho allegato la tua tabella di dati di esempio con una colonna chiamata Formula di Jim che ha la mia formula applicata alla tabella di dati.In questo modo puoi avere una versione funzionante della formula per il confronto con ciò che stai tentando di creare.
Ri: trova il primo elemento con condizione in una colonnaGrazie Jim! Ho incollato la tua formula direttamente nei miei dati e ho controllato di nuovo: ha funzionato sulle prime 7000 righe, ma da lì in poi è tutto ".", Non mostrando il primo numero che non è 10000000. Quando sono entrato nella formula, funzionava a lungo, quindi ho dovuto premere esc per sbloccare jmp. è questo che sta causando ciò? Ho in totale circa 7000k righe.Ri: trova il primo elemento con condizione in una colonnaSono molte righe. Questa formula potrebbe richiedere meno memoria. Si presuppone che il primo valore ≠ 10000000000 sia sempre inferiore a 10000000000.
If(Col Min(:score, :group) == 10000000000,
.,
Col Min(
:score[Col Min(Row(), :group, :score == 10000000000)],
:group
)
)
Re: trovare il primo elemento con condizione in una colonnaEcco un approccio diverso per risolvere il problema.Questo approccio è uno script.Dovrebbe essere più efficiente del precedente approccio con colonna a formula singola.Prima trova i primi valori, li estrae in una nuova tabella e quindi utilizza la piattaforma di aggiornamento per unire i valori nella tabella dati originale.
names default to here(1);
dt=current data table();
// Create a column that finds the first values
dt<<NEW column=""></NEW>