v DAF werden vor der Ausführung von Abfragen berechnet.
v Mehrere DAF sind in folgenden Prozessen verfügbar:
– Momentaufnahme: Wenn ein PDF nicht für eine Zelle definiert ist, ist der
Wert des Feldes NULL. Wenn eine einzelne ID größer als eine Zelle ist, wird
für jede Zelle eine Zeile ausgegeben.
– Segment: PDFs sind nicht für das Segmentieren nach Feldern verfügbar, wenn
mehrere Eingangszellen ausgewählt sind. PDFs müssen für das Segmentieren
nach Abfrage in allen ausgewählten Eingangszellen vorhanden sein.
v DAF beinhalten nur einen einzelnen, zufällig ausgewählten Wert pro ID-Wert,
unabhängig von der Anzahl des Auftretens dieser ID in den Daten. Daher exis-
tiert für jeden ID-Wert nur ein Datensatz, wenn die Ausgabe keine Tabellenfel-
der, aber eine IBM ID enthält.
Wenn Sie ein abgeleitetes Feld verwenden, das auf einem Tabellenfeld basiert,
beinhaltet die Ausgabe indirekt ein Tabellenfeld. In diesem Fall existiert für jede
Instanz eines ID-Wertes ein Datensatz. (Kommt ein ID-Wert zum Beispiel sieben
Mal in den Daten vor, dann werden sieben Datensätze ausgegeben.)
Dauerhaft abgeleitete Felder speichern nur einen einzigen Wert für jede Zielgrup-
pen-ID, welcher zufällig aus den verfügbaren Werten ausgewählt wird. Dies be-
deutet, dass Sie beim Arbeiten mit nicht normalisierten Daten die Makrofunktion
GROUPBY verwenden müssen, um das gewünschte Verhalten zu erreichen.
Zum Beispiel wollen Sie in der Einkaufstransaktionstabelle den höchsten Betrag ei-
ner einzelnen Einkaufstransaktion eines Kunden finden und diesen als dauerhaft
abgeleitetes Feld für nachfolgende Prozesse speichern. Sie können ein abgeleitetes
Feld (und dann ein als dauerhaft festgelegtes abgeleitetes Feld) wie folgt schreiben:
Höchster_Trans_Betr = groupby(KID, maxof, Trans_Betr)
Bei nicht normalisierten Einkaufstransaktionsdaten wie den nachfolgend aufgeführ-
ten wird dies folgendermaßen berechnet:
CID
DATUM
A
1.1.2007
A
15.3.2007
A
30.4.2007
Wenn das abgeleitete Feld dauerhaft ist, wird (zufällig) ein beliebiger Wert (alle
sind 300 USD) gewählt und der Wert 300 USD für Kunde A festgelegt.
Ein zweites weniger offensichtliches Beispiel ist die Auswahl einer Vorhersagemo-
dell-Bewertung aus einer Notentabelle für ein bestimmtes Modell X. Hier kann das
abgeleitete Feld so aussehen:
ModellX_Bewertung = groupby(KID, maxof, if(Modell = 'X', 1, 0), Note)
Und die Daten können so aussehen:
CID
MODELL
A
A
A
B
A
X
TRANS_BETR HÖCHSTER_TRANS_BETR
200 USD
300 USD
100 USD
300 USD
300 USD
300 USD
NOTE
MODELLX_BEWERTUNG
57
80
72
80
80
80
Kapitel 11. Gespeicherte Objekte
229