Clever-Excel-Forum

Normale Version: Leere Zellen ignorieren bei Matrixfunktion
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Ich habe ein Problem, und weiß nicht weiter! Huh

Ich möchte Ausreißer von 10 Benotungen erkennen und ignorieren können. Dafür habe ich die Whiskerantennen bestimmt, also Quartilsabstand *1,5
Diese Zahl steht in AA15.
Nun möchte ich dass er die Werte (Q15:Q24) vergleicht mit Meridian+-AA15. So weit klappt das als MATRIXFUNKTION ganz gut.

Code:
{=WENN(ODER((Q15:Q24)<MEDIAN(Q15:Q24)-AA15;(Q15:Q24)>MEDIAN(Q15:Q24)+AA15);0;1)}


Nun das Problem: lösche ich einen Ausreißer, oder es sind nur 8 Daten statt 10 Datenpunkte vorhanden, so zieht EXCEL bei MATRIXFUNKTION die leeren zeilen mit in die Berechnung. und gibt sie anscheinenden als Ausreißer wider.
Wie kann man die oben stehende Formel editieren, damit nur die tatsächlichen Werte berücksichtigt werden?
Ich werde wahnsinnig, bitte um hilfe!
Morrn, Brauer;
vielleicht hättest du doch mal deinen Text Korrektur lesen sollen! ;-]
1. Was ist der Unterschied zwischen Meridian und Median…?
2. Deine Formel kann so nicht funktionieren! Die Forumssoftware hat den Teil zwischen < und > eliminiert, weil sie diese beiden Zeichen in dieser Reihenfolge offensichtlich für (ungültige) HTML-Tags gehalten hat. Aber auch mit der entsprechenden Ergänzung kann sie nicht als (plurale → mehrzellig-mehrwertige) Matrixformel richtig funktionieren, weil sie die nicht-matrixformel-fähige Funktion ODER enthält. Sie funktioniert aber als normale Formel, wobei dann der Vergleich einer (der lfd) Zelle mit dem Median aller Zellen ausreichend wäre, also so:
=WENN(ODER(Q15<MEDIAN(Q$15:Q$24)-AA$15;Q15>MEDIAN(Q$15:Q$24)+AA$15);0;1)
Eine funktionsfähige und richtige Ergebnisse liefernde (plurale) Matrixformel sähe dagegen so aus, wenn die Ausreißer mit 0 gekennzeichnet werden sollen:
{=(Q15:Q24>=MEDIAN(Q15:Q24)-AA$15)*(Q15:Q24<=MEDIAN(Q15:Q24)+AA$15)}
Wenn die Ausreißer mit 1 gekennzeichnet werden sollen, wäre sie etwas einfacher:
{=(Q15:Q24<MEDIAN(Q15:Q24)-AA$15)+(Q15:Q24>MEDIAN(Q15:Q24)+AA$15)}
Und wenn zwischendurch oder am Ende des Bereichs fehlende Werte weggelassen werden sollen, sähe die 1.Matrixformel so aus:
{=WENN(Q15:Q24="";"";(Q15:Q24>=MEDIAN(Q15:Q24)-AA$15)*(Q15:Q24<=MEDIAN(Q15:Q24)+AA$15))}
Natürlich kann man bei kürzeren Bereichen auch eine Normalformel verwenden und hierbei ebenfalls zwischendurch fehlende Werte auslassen. Die Formel wird dann eben nur soweit herunterkopiert wie benötigt:
=WENN(Q15="";"";1-ODER(Q15<MEDIAN(Q$15:Q$24)-AA$15;Q15>MEDIAN(Q$15:Q$24)+AA$15))
Mehr ist nicht erforderlich!
Du solltest dir sicherheitshalber angewöhnen, zumindest <…>-Formelteile hier mit benannten Zeichen zu schreiben: < → &lt; - > → &gt;
Gruß, Castor
Vielen Dnak für die umfassende Antwort, ich werde beim nächsten mal etwas besser aufpassen.

Ich habe jetzt jedoch

{=WENN(Q15:Q24="";"";(Q15:Q24>=MEDIAN(Q15:Q24)-AA$15)*(Q15:Q24<=MEDIAN(Q15:Q24)+AA$15))} eingegeben.

In Zelle Q22 steht ein offensichtlicher  Ausreißer. Wenn ich statt Q15:Q24 nur Q22 in die Formel eingebe, außer bei MERIAN, dann gibt er mir eine 0 aus, bei der oben genannten Matrixfunktion doch leider nur eine 1.

Ich möchte jedoch, dass sobald ein Ausreißer vorhanden ist, der Wert 0 ergibt, damit ich den Ausreißer löschen kann.

Würde mich sehr freuen, wenn ihr mir hier noch einen Tipp geben könntet.
Was ich geschrieben hatte, BB,
bezog sich, sofern es eine {Matrixformel} war, auf alle Werte. Diese muss dann auch genausoviele Zellen umfassen wie die Quelle, also bspw R15:R24, und gibt für jeden Quellwert 0 oder 1 zurück. Ist es eine normale Formel, mit der immer nur jeweils 1 Wert mit dem Median (nicht MERIAN, das war eine mittelalterliche naturkundliche Zeichnerin; wieder nicht aufgepasst! :-]) verglichen wird, muss diese von zB R15 aus über alle signifikanten Folgezellen gezogen werden. Dabei ändert sich die Quelle, was bei einer Matrixformel mit Vorabauswahl des ganzen Ergebnisbereichs nicht erfolgt und auch nicht erforderlich ist. Wenn du also so etwas machst, solltest du auch die von mir dafür vorgesehene Formel benutzen und nicht irgendetwas zwischen allen gezeigten Varianten!
Dann erhältst du auch 0 (bzw 1 - je nach Wahl) und kannst den Ausreißer löschen, wodurch eine Neuberechnung auf der Basis eines ggf neuen Medianwerts ausgelöst wird.
Ein Insgesamt-Ergebnis wäre hier sinnlos, denn es würde dir ja nur zeigen, dass Ausreißer vorhanden sind, nicht aber ihre Werte. Eine Aufzählung derselben in nur einer oder auch mehreren Zellen, die nicht direkt mit denen der Quelle korrelieren (bei sehr vielen Daten sinnvoll, aber nicht bei nur 10!), würde eine andere Formel erfordern. Und davon konnte ich anhand deines ursprünglichen Textes auch nicht ausgehen und tue es auch jetzt nicht.
Castor
(15.06.2017, 13:46)Castor schrieb: [ -> ]Median (nicht MERIAN, das war eine mittelalterliche naturkundliche Zeichnerin; wieder nicht aufgepasst! :-])
Median, Meridian, Merian, Meran, Miriam - alles das selbe.
Liebes Forum,

Ich habe eine Fragestellung und hoffe, dass sie mir jemand beantworten kann. Ich brauche keine Kommentare zu  Rechtschreibfehlern oder wertlose tipps!

Also versuche ich es nocheinmal:

Die Formel:
Code:
{=WENN(ODER((P5:P14)<MEDIAN(P5:P14)-AA5;(P5:P14)>MEDIAN(P5:P14)+AA5);0;1)}
funktioniert hervorragend für meine Fragestellung. Ich möchte wissen, ob es einen Ausreißer innerhalb der Matrix P5:P14 gibt.
Er gibt eine 0 an, falls das der Fall ist, ansonsten eine 1. Und zwar in einer einizigen Zelle.

Problem ist jetzt, wenn ich jetzt einen Wert zwischen P5:P14 lösche, oder nur 8 Werte statt 10 habe, dann behandelt er die leeren zeilen auch als Ausreißer.
Hier muss es doch eine Möglichkeit geben, die leerzeilen zu ignorieren?!

Würde mich freuen, wenn mir an der Stelle jemand weiterhilft. Danke im Voraus, Jakob
Hallo Jakob

Eine Beispielmappe wäre nicht schlecht.
Soso, Männeken;
nu pass ma uff! Wennde denkst, det meene Tipps wertlos sinn unn du se deshalb nich beachten tun musst, tut's ma leid!
Deine Formel ist wieder verstümmelt und du setzt meine (getesteten) Formeln nicht so um, wie vorgesehen. Außerdem scheinst du kaum Ahnung von der Wirkungsweise von  Matrixformeln zu haben. Deine kann nicht plural funktionieren, d.h., über einen ganzen Bereich (Spalte), parallel zur Datenspalte, weil sie ODER enthält! Sie funktioniert also nur singular, d.h., für eine Einzelzelle, und dabei ist sowohl die Matrixformelform als auch die Angabe der Vergleichszelle als Bereich überflüssig. Die Xl-Steuerung verwendet in diesem Fall ohnehin immer die 1.Zelle, wenn der Bereich relativ angegeben wurde (die ändert sich dann nämlich), allerdings auch der Bereich für MEDIAN, da der bei dir ebenfalls relativ adressiert ist. Werden beide Bereiche absolut adressiert, verwendet Xl als Vergleichswert den, der laut Formelstandortzelle an der Reihe wäre. Dein „funktioniert hervorragend ist also eher zufällig, nicht aber algorithmisch determiniert!
Da du Einzelzellen im Ergebnis anzeigen willst, kannst du dein Problem tatsächlich mit =WENN(P5="";"";…) lösen. Bist du dazu nicht fähig, solltest du shift-del s letzten Rat befolgen!
Ansonsten morgen Nachmittag beim Köpenicker Sommer in Alt-Köpenick…
Castor