Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1036to1040
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Quartile von Array

Quartile von Array
05.01.2009 14:01:24
Array
Hallo,
ich suche eine Möglichkeit Quartile aus einem Array in VBA zu berechnen.
Ich habe ein Array definiert in dem ich 100 Werte aus verschiedenen Dateien eingelsen habe (1 Spalte, 100 Zeilen).
Jetzt brauche ich das 25 und 75 % Quartil von einem Auszug (z.Bsp. erste 50 Werte) des Arrays.
Da ich verschiedene Dateien habe aus denen das Array zusammengesetzt wird, kann ich nicht worksheetfunction.quartile verwenden.
Wie gehts dann?
Vielen Grüße,
Alex

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Quartile von Array
05.01.2009 14:36:00
Array
Hi Alex,
Quartile kenne ich nicht, die Excelhilfe brachten mich nicht weiter und wikipedia auch nicht.
Ich verstehe absolut nicht wie die Werte in Spalte B berechnet werden. Hätte ich das verstanden könnte ich über Makrocode nachdenken.

Tabellenblatt: [Mappe1]!t3
|  A |   B  |  C  |
1 |  1 |  3,5 | 25% |
2 |  2 |  7,5 | 50% |
3 |  4 | 9,25 | 75% |
4 |  7 |      |     |
5 |  8 |      |     |
6 |  9 |      |     |
7 | 10 |      |     |
8 | 12 |      |     |
Benutzte Formeln:
B1:  =QUARTILE({1;2;4;7;8;9;10;12};ZEILE())
B2:  =QUARTILE({1;2;4;7;8;9;10;12};ZEILE())
B3:  =QUARTILE({1;2;4;7;8;9;10;12};ZEILE())


Gruß
Reinhard

Anzeige
AW: Quartile von Array
05.01.2009 15:26:00
Array
Hallo Reinhard,
Bei Quartilen wird eine (geordnete) Grundgesamtheit von Zahlen in Viertel eingeteilt.
Das 50% Quartil ist also der Wert an der Stelle, wo gleichviele Zahlen kleiner und größer als der Wert sind.
Bei dem 25% Quartil sind 25% der Werte kleiner und 75% der Werte größer als das Quartil. Anaolog beim 75% Quartil. Bei einer Anzahl von n*4+1 Werten ist das Quartil immer ein bestimmter Wert der Grundgesamtheit.
Bei den Werten die oben rauskommen ist das Quartil kein Wert der Grundgesamtheit, da sich die Grundgesamtheit der Werte (Anzahl 8) nicht so aufteilen lässt, dass ein eindeutiger Wert für die Bestimmung der Quartile berechnet werden kann.
Z.B. Der Median (das zweite Quartil) gibt den Wert an, wo genau gleichviel Werte größer und kleiner als dieser Wert sind (bei einer geordneten Skala mit 9 Werten ist dies zum Beispiel der 5. Wert). In Deinem Beispiel geht das nicht. Daher nimmt Excel das Mittel aus dem 4. und 5. Wert.
Für das 25% Quartil bewegt sich Excel vom 3. Wert aus 1/4 der Differenz vom 2. und 3. Wert in Richtung 2. Wert (also 4-(4-2)*0.25 = 3.5). Für das 75% Quartil rechnet Excel dann ebenso beim 6. und 7. Wert (also 9-(9-10)*0.25 = 9.25).
Gruß,
Alex
Anzeige
AW: Quartile von Array
05.01.2009 16:57:23
Array
Hallo Alexander,
danke für die Berechnung und die Hinweise.
Von und Bis im Code mußt du anpassen nach Wunsch

Sub Quartil_Test()
Dim arrQuelle, N As Integer
Const Von As Integer = 2     'Erster Wert = 1 usw.
Const Bis As Integer = 7
arrQuelle = Array(1, 2, 4, 7, 8, 9, 10, 12)
ReDim arrziel(Bis - Von)
For N = 0 To Bis - Von
arrziel(N) = arrQuelle(Von + N - 1)
Next N
MsgBox Application.Quartile(arrziel, 3)
End Sub


Gruß
Reinhard

AW: Quartile von Array
05.01.2009 14:46:03
Array
Hallo,
das kannst du auch aus einem Array berechnen.

Sub Quartil_Test()
Dim test
test = Array(1, 2, 4, 7, 8, 9, 10, 12)
MsgBox Application.Quartile(test, 3)
End Sub


Gruß
Dierk

Anzeige
AW: Quartile von Array
05.01.2009 15:03:00
Array
Danke,
und wenn ich die Funktion nur auf einen teil des Arrays anwenden möchte?
Also in Deinem Beispiel habe ich das Array(1, 2, 4, 7, 8, 9, 10, 12).
Jetzt möchte ich aber nur ein Quartil von den ersten 5 Werten ohne ein neues Array zu erstellen.
Geht das auch?
AW: Quartile von Array
05.01.2009 15:16:00
Array
Hallo,
um die Erstellung eines neuen Arrays kommst du nicht herum. Kannst du ja in einer Schleife aus dem vorhandenen Array machen. Das gehts ratzfatz.
Gruß
Dierk
AW: Quartile von Array
05.01.2009 15:27:58
Array
Danke,
wie wende ich dies denn nur auf einen Teil des Arrays an, ohne ein neues Array zu erstellen.
Also zum Beispiel den Median der ersten 5 Werte des Arrays?
Danke und Gruß,
Alex
Anzeige
DANKE
05.01.2009 15:28:00
Alexander
...bin bei der Erstellung der Beiträge irgendwie etwas unbedarft...sorry für die vielen Posts!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige