# MutualInfo - grafik fonksiyonu

MutualInfo, iki alan arasındaki veya Aggr() içindeki toplu değerler arasındaki karşılıklı bilgileri (MI) hesaplar.

MutualInfo, MI analizi için farklı türleri etkinleştirir:

* İki yönlü MI: Bir sürücü alanı ve bir hedef alan arasındaki MI'yı hesaplayın.

* Değere göre sürücü ayırma: MI, sürücü ve hedef alanlardaki bireysel alan değerleri arasında hesaplanır.

* Özellik seçimi: Tüm alanların MI'ya dayalı olarak karşılaştırıldığı bir matris oluşturmak için ızgara grafiğinde MutualInfo kullanın.

MutualInfo, iki veri kümesi için toplanmış karşılıklı bilgileri döndürür. Karşılıklı bilgi, veri kümeleri arasındaki ilişkinin bir ölçüsüdür ve grafik boyutları üzerinde yinelenen (x,y) çift değerleri için toplanır. Karşılıklı bilgi 0 ile 1 arasında ölçülür. MutualInfo seçim veya küme et ifadesi ile tanımlanır.

Karşılıklı bilgiler hesaplanırken, ilişkilendirmeler farklı tablolardaki alanlardan gelen değerlerin arasındaki ilişkiyi ve bu değerlerin sıklığını etkiler.

Aynı hedef ve sürücü için döndürülen değerler biraz farklılık gösterebilir. Bunun nedeni, her MutualInfo çağrısının rastgele seçilmiş bir örnek üzerinde çalışması ve MutualInfo algoritmasının doğal rastgeleliğidir.

MutualInfo, Aggr() fonksiyona uygulanabilir.

Söz Dizimi:

MutualInfo({SetExpression}] [DISTINCT] [TOTAL] target, driver , datatype [, breakdownbyvalue [, samplesize ]])

Dönüş verileri türü: sayısal

Bağımsız Değişkenler:

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| target, driver | Karşılıklı bilgilerin ölçüleceği iki örnek kümesi içeren ifadeler veya alanlar. |
| datatype | Hedef ve sürücüde bulunan veri türleri,<br><br>discrete:discrete için 1 veya 'dd'<br><br>continuous:continuous için 2 veya 'cc'<br><br>continuous:discrete için 3 veya 'cd'<br><br>discrete:continuous için 4 veya 'dc'<br><br>Veri türleri büyük/küçük harfe duyarlı değildir. |
| breakdownbyvalue | Sürücüdeki bir değere karşılık gelen statik bir değer. Sağlanırsa, hesaplama bu değer için MI katkısını hesaplayacaktır. ValueList() veya ValueLoop() kullanabilirsiniz. Null() eklenirse hesaplama sürücüdeki tüm değerler için genel MI'yı hesaplar.<br><br>Değere göre ayırma, sürücünün ayrık veriler içermesini gerektirir. |
| samplesize | Hedef ve sürücüden örneklenecek değerlerin sayısı. Örnekleme rastgele olarak yapılır. MutualInfo örnekleme boyutunun en az 80 olmasını gerektirir. MutualInfo kaynakları yoğun şekilde kullanabileceğinden MutualInfo varsayılan olarak yalnızca 10.000'e kadar veri çiftini örnekler. Örnek boyutunda daha fazla sayıda veri çifti belirtebilirsiniz. MutualInfo zaman aşımına uğrarsa, örnek boyutunu küçültün. |
| SetExpression | Toplama işlevi, varsayılan olarak, seçim tarafından tanımlanmış olası kayıtlar kümesi üzerinden toplanır. Bir set analizi ifadesi ile alternatif bir kayıt kümesi tanımlanabilir. |
| DISTINCT | Fonksiyon bağımsız değişkenlerinden önce DISTINCT sözcüğü varsa fonksiyon bağımsız değişkenlerinin değerlendirilmesinden kaynaklanan çoğaltmalar göz ardı edilir. |
| TOTAL | TOTAL sözcüğü fonksiyon bağımsız değişkenlerinden önce gelirse, hesaplama yalnızca geçerli boyutsal değere ait olanlar için değil de, geçerli seçimlerde verilen tüm olası değerler üzerinden yapılır; yani grafik boyutlarını göz ardı eder. TOTAL niteleyicisinin ardından açılı ayraçlar içindeki bir veya daha fazla alan adından oluşan bir liste gelebilir &lt;fld&gt;. Bu alan adları grafik boyut değişkenlerinin bir alt kümesi olmalıdır.<br><br>[Toplama kapsamını tanımlama](https://help.qlik.com/tr-TR/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/ChartFunctions/define-aggregation-scope.htm) |

Sınırlamalar:

Bir veri çiftinin herhangi bir veya her iki parçasındaki metin değerleri, NULL değerler ve eksik değerler, veri çiftinin tamamının göz ardı edilmesine neden olur.

Örnekler ve sonuçlar:

Örnek kodu uygulamanıza ekleyin ve çalıştırın. Ardından sonucu görmek için, sonuçlar sütununda listelenen alanları uygulamanızda bir sayfaya ekleyin.

Fonksiyon örnekleri

| Örnek | Sonuç |
| --- | --- |
| `mutualinfo(Age, Salary, 1)` | Boyutu ve `Employee name` `mutualinfo(Age, Salary, 1)` hesaplamasını içeren tablo için sonuç 0.99820986 olur. Sonuç yalnızca toplamlar hücresi için görüntülenir. |
| `mutualinfo(TOTAL Age, Salary, 1, null(), 81)` | Gender boyutuyla bir filtre bölmesi oluşturur ve bundan seçimler yaparsanız, Female seçildiğinde 0,99805677, Male seçildiğinde 0,99847373 sonucunu görürsünüz. Bunun nedeni, seçimin diğer Gender değerine ait olmayan tüm sonuçları hariç tutmasıdır. |
| `mutualinfo(TOTAL Age, Gender, 1, ValueLoop(25,35))` | 0.68196996. Gender içinden herhangi bir değer seçildiğinde bu değişerek 0 olur. |
| `mutualinfo({1} TOTAL Age, Salary, 1, null())` | 0.99820986. Bu seçimlerden bağımsızdır. Küme ifadesi {1}, tüm seçimleri ve boyutları yoksayar. |

Örneklerde kullanılan veriler:

`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 '|');`