Zu Hauptinhalt springen

MutualInfo - Diagrammfunktion

MutualInfo berechnet die gegenseitigen Informationen zwischen zwei Feldern oder zwischen aggregierten Werten in Aggr().

MutualInfo liefert die aggregierten gegenseitigen Informationen für zwei Datensätze. Das ermöglicht eine Haupttreiberanalyse zwischen einem Feld und einem potenziellen Treiber. „Gegenseitige Informationen“ misst die Beziehung zwischen den Datensätzen und wird für Wertepaare (x,y) aggregiert, die Diagrammdimensionen durchlaufen. „Gegenseitige Informationen“ werden zwischen 0 und 1 gemessen und können als Perzentilwert formatiert werden. MutualInfo ist durch Auswahlen oder durch eine Auswahlformel definiert.

MutualInfo ermöglicht verschiedene Arten von MI-Analysen:

  • Paarweise MI: Berechnen Sie die MI zwischen einem Treiberfeld und einem Zielfeld.

  • Treiberaufschlüsselung nach Wert: Die MI wird zwischen einzelnen Feldwerten im Treiber- und im Zielfeld berechnet.

  • Funktionsauswahl: Verwenden Sie MutualInfo in einem Matrixdiagramm, um eine Matrix zu generieren, in der alle Felder basierend auf MI miteinander verglichen werden.

MutualInfo gibt nicht unbedingt Kausalität zwischen Feldern an, die gegenseitige Informationen teilen. Zwei Felder können gegenseitige Informationen teilen, aber keine gleichwertigen Treiber füreinander sein. Wenn beispielsweise der Eisverkauf und die Außentemperaturen verglichen werden, zeigt MutualInfo die gegenseitigen Informationen zwischen den beiden. Dabei wird nicht angegeben, ob die Außentemperatur den Eisverkauf steigert, was wahrscheinlich ist, oder ob der Eisverkauf die Außentemperatur steigert, was unwahrscheinlich ist.

Wenn gegenseitige Informationen berechnet werden, wirken sich Verknüpfungen auf die Entsprechung zwischen und die Häufigkeit von Werten aus Feldern aus, die aus verschiedenen Tabellen stammen.

Zurückgegebene Werte für die gleichen Felder oder Auswahlen können leicht voneinander abweichen. Das liegt daran, dass jeder MutualInfo-Aufruf an einem zufällig ausgewählten Beispiel und mit der inhärenten Zufälligkeit des MutualInfo-Algorithmus durchgeführt wird.

MutualInfo kann auf die Funktion Aggr() angewendet werden.

Syntax:  

MutualInfo({SetExpression}] [DISTINCT] [TOTAL] field1, field2 , datatype [, breakdownbyvalue [, samplesize ]])

Rückgabe Datentyp: numerisch

Argumente:  

Argumente
Argument Beschreibung
field1, field2 Die Formeln oder Felder, die die beiden Beispielsätze enthalten, für die die gegenseitigen Informationen gemessen werden.
datatype

Die im Ziel und im Treiber enthaltenen Datentypen,

1 oder 'dd' für diskret:diskret

2 oder 'cc' für kontinuierlich:kontinuierlich

3 oder 'cd' für kontinuierlich:diskret

4 oder 'dc' für diskret:kontinuierlich

Bei Datentypen wird nicht zwischen Groß- und Kleinschreibung unterschieden.

breakdownbyvalue

Ein statischer Wert, der einem Wert im Treiber entspricht. Wenn er bereitgestellt wird, wird der MI-Beitrag für diesen Wert berechnet. Sie können ValueList() oder ValueLoop() verwenden. Wenn Null() hinzugefügt wird, wird die gesamte MI für alle Werte im Treiber berechnet.

Für die Aufschlüsselung nach Wert ist es erforderlich, dass der Treiber diskrete Daten enthält.

samplesize

Die Anzahl der Werte, die vom Ziel und Treiber als Stichprobe genommen werden. Die Stichprobennahme erfolgt zufallsbasiert. MutualInfo erfordert eine Mindeststichprobengröße von 80. Standardmäßig nimmt MutualInfo nur eine Stichprobe von bis zu 10.000 Datenpaaren an, da MutualInfo ressourcenintensiv sein kann. Sie können eine größere Anzahl Datenpaare in der Stichprobengröße angeben. Reduzieren Sie im Fall einer Zeitüberschreitung von MutualInfo die Stichprobengröße.

SetExpression Standardmäßig berechnet sich die Aggregierungsfunktion über alle wählbaren Werte. Alternativ können Sie die der Berechnung zugrunde liegenden Werte über die Auswahlformel bestimmen.
DISTINCT Der Zusatz DISTINCT vor den Funktionsargumenten bewirkt, dass bei der Auswertung der Funktionsargumente entstehende Duplikate nicht berücksichtigt werden.
TOTAL

Der Zusatz TOTAL vor der Funktion bewirkt, dass die Berechnung über alle ausgewählten bzw. wählbaren Werte erfolgt, und nicht nur über diejenigen, die zu dem Wert der aktuellen Dimension zählen. Die Dimensionen des Diagramms werden also nicht berücksichtigt.

Mit TOTAL [<fld {.fld}>], wobei auf den Zusatz TOTAL eine Liste aus mindestens einem Feldnamen (d. h. einer Teilmenge der Diagrammdimensionsvariablen) folgt, erstellen Sie eine Teilmenge aller möglichen Werte.

Definieren des Aggregierungsbereichs

Beschränkungen:  

Textwerte, NULL-Werte und fehlende Werte in einem oder beiden Teilen eines Wertepaars führen dazu, dass das Wertepaar ignoriert wird.

Beispiele und Ergebnisse:  

Fügen Sie Ihrer App ein Beispielskript hinzu und führen Sie dieses aus. Fügen Sie einem Arbeitsblatt in Ihrer App dann die Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.

Funktionsbeispiele
Beispiel Ergebnis
mutualinfo(Age, Salary, 1)

Für eine Tabelle mit der Dimension Employee name und der Kennzahl mutualinfo(Age, Salary, 1) ist das Ergebnis 0.99820986. Das Ergebnis wird nur für Zellen mit Gesamtwerten angezeigt.

mutualinfo(TOTAL Age, Salary, 1, null(), 81)

Wenn Sie ein Filterfenster mit der Dimension Gender erstellen und darin Auswahlen vornehmen, wird bei Auswahl von Female 0.99805677 und bei Auswahl von Male 0.99847373 ausgegeben. Dies geschieht, weil die Auswahl alle Ergebnisse ausschließt, die zum jeweils anderen Wert für Gender gehören.

mutualinfo(TOTAL Age, Gender, 1, ValueLoop(25,35))

0.68196996. Bei Auswahl eines beliebigen Werts in Gender ändert sich dies zu 0.

mutualinfo({1} TOTAL Age, Salary, 1, null())

0.99820986. Dies ist unabhängig von Auswahlen. Die Auswahlformel {1} berücksichtigt keine Auswahlen und Dimensionen.

In Beispielen verwendete Daten:

Salary:

LOAD * inline [

"Employee name"|Age|Gender|Salary

Aiden Charles|20|Male|25000

Ann Lindquist|69|Female|58000

Anna Johansen|37|Female|36000

Anna Karlsson|42|Female|23000

Antonio Garcia|20|Male|61000

Benjamin Smith|42|Male|27000

Bill Yang|49|Male|50000

Binh Protzmann|69|Male|21000

Bob Park|51|Male|54000

Brenda Davies|25|Male|32000

Celine Gagnon|48|Female|38000

Cezar Sandu|50|Male|46000

Charles Ingvar Jönsson|27|Male|58000

Charlotte Edberg|45|Female|56000

Cindy Lynn|69|Female|28000

Clark Wayne|63|Male|31000

Daroush Ferrara|31|Male|29000

David Cooper|37|Male|64000

David Leg|58|Male|57000

Eunice Goldblum|31|Female|32000

Freddy Halvorsen|25|Male|26000

Gauri Indu|36|Female|46000

George van Zaant|59|Male|47000

Glenn Brown|58|Male|40000

Harry Jones|38|Male|40000

Helen Brolin|52|Female|66000

Hiroshi Ito|24|Male|42000

Ian Underwood|40|Male|45000

Ingrid Hendrix|63|Female|27000

Ira Baumel|39|Female|39000

Jackie Kingsley|23|Female|28000

Jennica Williams|36|Female|48000

Jerry Tessel|31|Male|57000

Jim Bond|50|Male|58000

Joan Callins|60|Female|65000

Joan Cleaves|25|Female|61000

Joe Cheng|61|Male|41000

John Doe|36|Male|59000

John Lemon|43|Male|21000

Karen Helmkey|54|Female|25000

Karl Berger|38|Male|68000

Karl Straubaum|30|Male|40000

Kaya Alpan|32|Female|60000

Kenneth Finley|21|Male|25000

Leif Shine|63|Male|70000

Lennart Skoglund|63|Male|24000

Leona Korhonen|46|Female|50000

Lina André|50|Female|65000

Louis Presley|29|Male|36000

Luke Langston|50|Male|63000

Marcus Salvatori|31|Male|46000

Marie Simon|57|Female|23000

Mario Rossi|39|Male|62000

Markus Danzig|26|Male|48000

Michael Carlen|21|Male|45000

Michelle Tyson|44|Female|69000

Mike Ashkenaz|45|Male|68000

Miro Ito|40|Male|39000

Nina Mihn|62|Female|57000

Olivia Nguyen|35|Female|51000

Olivier Simenon|44|Male|31000

Östen Ärlig|68|Male|57000

Pamala Garcia|69|Female|29000

Paolo Romano|34|Male|45000

Pat Taylor|67|Female|69000

Paul Dupont|34|Male|38000

Peter Smith|56|Male|53000

Pierre Clouseau|21|Male|37000

Preben Jørgensen|35|Male|38000

Rey Jones|65|Female|20000

Ricardo Gucci|55|Male|65000

Richard Ranieri|30|Male|64000

Rob Carsson|46|Male|54000

Rolf Wesenlund|25|Male|51000

Ronaldo Costa|64|Male|39000

Sabrina Richards|57|Female|40000

Sato Hiromu|35|Male|21000

Sehoon Daw|57|Male|24000

Stefan Lind|67|Male|35000

Steve Cioazzi|58|Male|23000

Sunil Gupta|45|Male|40000

Sven Svensson|45|Male|55000

Tom Lindwall|46|Male|24000

Tomas Nilsson|27|Male|22000

Trinity Rizzo|52|Female|48000

Vanessa Lambert|54|Female|27000

] (delimiter is '|');

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!