> Ich habe eine lange Liste mit Einträgen etwa der Art:
>
> FactorA, BedingungA, Zahl,
> FactorB, BedingungA, Zahl,
> FactorC, BedingungB, Zahl,
> FactorB, BedingungB, Zahl,
> FactorB, BedingungB, Zahl,
> ...
>
> Es gibt eine endliche Anzahl von Factoren* und von Bedingungen*.
> Die Zahlen können beliebige Messwerte annehmen.
>
> Als Auswertung möchte ich eine Matrix erstellen, welche die Faktoren
> (Zeilen) über die Bedingungen (Spalten) aufträgt.
>
> Als Zusammenfassungsfunktion der Messwerte dienen beispielsweise Summe
> oder Streuung.
>
> In Excel würde ich eine Pivot-Tabelle erstellen.
> Gibt es in Mathematica eine Funkion dafür oder einen eleganten Weg, dies
> zu erreichen.
Die Zahlen in die Tabelle einzuordnen läßt sich z.B. wie folgt machen:
Apply[ (zahl[#1, #2] = #3)&, liste, 1 ];
zahl[__] = Undefined
faktoren = Apply[#1&, liste, 1]//Union
bedingungen = Apply[#2&, liste, 1]//Union
tabelle = Outer[zahl, faktoren, bedingungen]
Hierzu sollte die Liste von der Form
{{facA, bedA, zahl}, {facB, bedB, zahl}, ...}
sein. Wenn sie linear ist, also
{facA, bedA, zahl, facB, bedB, zahl, ...}
muß man ein "liste = Partition[liste, 3]" voranstellen.
Gruß,
Thomas Hahn