Hier ist eine Beispieldatentabelle mit der 4. Spalte "Gewünschte Formelspalte", die das Ergebnis zeigt, das ich erreichen möchte.
| Gruppe | Probennummer | Datenwert | Gewünschte Formelspalte |
EIN | 1 | 22.1 | 200 |
| EIN | 2 | 104.2 | 200 |
| EIN | 3 | 200 | 200 |
| B | 1 | 18.6 | 199.5 |
| B | 2 | 95.4 | 199.5 |
| B | 3 | 105.8 | 199.5 |
| B | 4 | 170 | 199.5 |
| B | 5 | 199.5 | 199.5 |
| C | 1 | 40 | 100 |
| C | 2 | 60 | 100 |
| C | 3 | 80 | 100 |
| C | 4 | 100 | 100 |
Ich suche nach einer Spaltenformel, die den Wert für den Datenwert für den letzten Zeitpunkt jeder Gruppe eingibt.
Danke im Voraus!
Julia
Es tut uns leid. Ich lösche meinen Kommentar, da ich das Problem falsch gelesen hatte. Die akzeptierte Lösung ist definitiv der richtige Weg.
Wenn die Daten immer mit dem Sample ansteigen, ist dies mit der Col Max-Funktion ziemlich einfach.Wenn die höchste Stichprobe nicht immer den höchsten Datenwert hat, ist es etwas komplexer. Sehen Sie sich unten einen möglichen Ansatz an, beachten Sie, dass dies für große Tabellen langsam sein wird:
New Column( "If Data always Increases with Sample Number",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( Col Max( :Data Value, :Group ) ),
Set Display Width( 171 )
);
New Column( "If Data not related to Sample Number",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
MaxSample = Col Max( :Sample Number, :Group );
g = Associative Array( Loc( :Group << Get Values(), :Group ) );
s = Associative Array( Loc( :Sample Number << Get Values(), MaxSample ) );
union = g;
union << intersect( s );
r = Max( union << get keys );
:Data Value[r];
),
Set Display Width( 136 )
);