turntab Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 Moin Moin, ich versuche gerade einen guten Algorithmus zu finden um ein Ranking aufzustellen. Dazu sind folgende Faktoren von Bedeutung Besucher Durchschnittsbewertung Anzahl der Bewertungen Aus diesen drei Faktoren muss ein Wert gebildet werden, der ein plausibles Ranking abwirft. Danach kann anhand dieses Wertes ein z.B. Top-100 Liste gebildet werden. Nun gibt es da folgende Denkanstöße, die ich anhand von folgenden Beispieldaten erläutere: Datensatz 1 Besucher 100 Durchschnittsbewertung 4 Anzahl der Bewertungen 100 Datensatz 2 Besucher 140 Durchschnittsbewertung 5 Anzahl der Bewertungen 2 Datensatz 3 Besucher 320 Durchschnittsbewertung 1 Anzahl der Bewertungen 200 Nach meiner subjektiven Empfindung müsste das Ranking wie folgt aussehen: 1. Platz Datensatz 1 2. Platz Datensatz 2 3. Platz Datensatz 3 Warum? Datensatz 1 hat zwar eine niedrigere Durchschnittsbewertung, aber aufgrund der Vielzahl der Bewertungen müsste es höher gewichtet werden. Also diese beiden müsste man in irgendeine Relation zueinaner setzen. Wie die Anzahl der Besucher dort einfließen könnte, dazu habe ich noch gar keine Idee. Ich würde mich über Denkanstöße, Beispielformeln oder ein allgemeines Feedback freuen! THANKS! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Patrick_C64 Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 100 4 100 4 140 5 2 0,071428571 320 1 200 0,625 Durschn.B.*Anz./Bes. würde ich intuitiv/spontan als Formel nutzen. Dann wäre Datensatz 2 auf P3. Grund / Argumentation : Desto ausgeglichener das Verhältniss zwischen Besucher und Anzahl der Bewertungen desto aussagekräftiger ist bzw., mehr Gewicht bekommt die Durchschnittsbewertung. Gruß Patrick Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Aras Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 Im Grunde also nur eine Formel fürs Normalisieren finden? Erster Gedanke: Alle drei Datensätze sind miteinander "verknüpft". Gesamtanzahl der Bewertungen: 302 Gesamt aller Bewertungspunkte: 610 Meiste Bewertung: 200 Somit geben die Bewerter durchschnittlich ca. 2 Bewertungspunkte auf alle Seiten. Wir stellen uns also vor, die die nicht bewertet haben bewerten die Datensätze im Bereich einer 2. Also müssen wir jetzt die Punkte hochrechnen, wenn alle Datensätze die gleiche Anzahl an Bewertungen hätten, wobei der Durchschnittsuser 2 Bewertungspunkte geben würde. Also immer so hochrechnen, als hätten alle Datensätze 200 Bewertungen. Beispiel bei Datensatz 2 - Wir haben zwei Bewertungen und füllen die Bewertungen auf: 5 + 5 + 2 + 2 + 2 ... und ermitteln dann den Durchschnitt. DS1 (4 * 100 + 2 * (200-100)) / 200 = 3 DS2 (5 * 2 + (2 * 198)) / 200= 2,03 DS3 (1*200 + (2*0))/200 = 1 Wenn du weißt wie man die Besucher gewichten möchte, kannst du es ja gerne mitteilen. Dann kann man sich ja was ausdenken. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
turntab Geschrieben 28. Januar 2014 Autor Teilen Geschrieben 28. Januar 2014 Hallo Patrick_C64, die Formel geht nicht wirklich auf. Habe anhand dieser mal ein paar Berechnungen angestellt. Hier als Faktor 3 in einem öffentlichen Google Sheet: https://docs.google.com/spreadsheet/ccc?key=0AknLmrD0E8bTdEhrdURWZzR3dVIxUEV0Q1dMWWdLQkE&usp=sharing Das würde zum Beispiel zu folgenden Ranking führen: Besucher 100 Durschnitt 3 Anzahl 500 VOR Besucher 500 Durchschnitt 4 Anzahl 200 ------------------------------------------------------------------------------------ @aras, sehr interessante Ausführung. Den Ansatz habe ich verstanden. An sich eine sehr gute Lösung, nur ist die 200 in deinem Beispiel ja eine statische Zahl. Wenn alles auf 200 hoch oder runtergerechnet wird, wird die Formel doch früher oder später, je höher die Differnz, sehr ungenau oder? Vielleicht verstehe ich das aber auch noch nicht so richtig.... Kanst du deine Formel vielleicht in den Sheet eintragen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Crash2001 Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 (bearbeitet) Erst einmal müsste man festlegen, ob es nach Schulnoten, oder nach Punktzahl bewertet wird. Das habe ich bisher noch nirgends hier gefunden. Die 1 kann also entweder die beste mögliche Note sein, oder aber die schlechteste mögliche Note. Um eine sinnvolle Reihenfolge zu bekommen, kann man verschiedene Ansätze machen - je nachdem was einem halt wichtig ist. Möglich wäre hier z.B. folgendes: beste Durchschnittsbewertung (je nachdem ob Note oder Punkte halt die jeweilige Richtung)höchste Anzahl an Bewertungenhöchste Anzahl an Besuchernhöchste/niedrigste Abweichung vom GesamtdurchschnittswertGesamtbewertung, wenn alle 3 Ergebnisse in die Bewertung mit einfliessen sollen - hierbei müsste man sich dann für eine Bewertungsmatrix entscheiden, wie die einzelnen Faktoren jeweils gewichtet werden sollen. Dafür müsste man aber wissen, was am wichtigsten ist und dann, ob man dies mit Punkten, Noten, Prozentzahlen oder noch anders machen möchte.diverse andere Möglichkeiten @turntab: Die 200 ist da nur gewählt worden, weil dies der maximalen Anzahl an Bewertungen entspricht. (quasi 100% oder die maximale Anzahl an Bewertungen pro Seite) Bearbeitet 28. Januar 2014 von Crash2001 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
turntab Geschrieben 28. Januar 2014 Autor Teilen Geschrieben 28. Januar 2014 Hey Crash, bei der Durschnittsbewertung handelt es sich um eine 1-5 Sternebewertung. Also 5 ist die beste Bewertung. Zu deinen Ansätzen: Die Durschnittsbewertung gibt es ja bereits. Diese errechnet sich logischerweise durch die Gesamtanzahl der Sterne / Anzahl der Bewerter. Was ich benötige ist eine Gesamtbewertung, wie du sie auch schon aufführst, hier sollen wie gesagt folgende drei Faktoren einfließen: - Anzahl der Besucher (Seitenaufrufe) - Durchschnittsbewertung (aller Bewertungen) - Anzahl der Bewertungen Was nach der Formel herauskommt, ob Noten, Prozentzahlen etc. ist schlicht egal. Solange man danach sortieren kann. Denn anhand dieses nicht öffentlichen Ergebnisses wird ja erst das Ranking gebildet. Die Gewichtung könnte in etwa so aussehen: - Anzahl der Besucher (5%) - Durchschnittsbewertung (60%) - Anzahl der Bewertungen (35%) Eventuell kann man die Zahl der Besucher auch weglassen, oder nur im direktvergleich, also bei zwei gleichen Werten nach der höheren Besucherzahl sortieren. Wäre eine Alternative. Schöne wäre es jedoch den Faktor gleich mit aufzunehmen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 Eine einfache Gewichtung wird dich nicht weiterbringen. Oder sind viele Einser-Bewertungen besser als wenige? Erstell doch mal alle Kombinationen aus Besucheranzahl (100, 200, 300), Bewertung (1, 3, 5) und Anzahl (10, 20, 30) und bring sie in die deiner Meinung nach richtige Reihenfolge. Dann kann man dir weiterhelfen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
turntab Geschrieben 28. Januar 2014 Autor Teilen Geschrieben 28. Januar 2014 Moin Klotzkopp, danke für deine Mithilfe! Nein - viele Einser-Bewertungen sind nicht besser als wenige. Aber ich würde sagen vierhundert 4er Bewertungen sind besser als drei 5er Bewertungen. Die Kombinationen sind ja unendlich. 0 - unendlich Besucher 1 Durchschnittsbewertung 0 - unendlich Bewertungen (theoretisch) Das Ergebnis muss hinterher so plausibel wie möglich sein, das ist das Ziel. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Aras Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 Er meint eher, dass du so eine Tabelle machen sollst: https://docs.google.com/spreadsheet/ccc?key=0ArvXulzzloh9dFJablVXZ3I5ejZEM3BJMm1SY0ZfX2c#gid=0 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 Das Ergebnis muss hinterher so plausibel wie möglich sein, das ist das Ziel.Man kann sehr viele Sortierungen "plausibel" begründen. Darunter wird sich jeder von uns etwas anderes vorstellen. So kommen wir nicht weiter. Du hast in deinem Kopf eine mehr oder weniger diffuse Vorstellung von der richtigen Sortierung. Aber die ist eben nur dort. Solange du uns die nicht hinreichend erklärst, wird keine vorgeschlagene Formel "aufgehen". Also bitte: Bring die Liste mit den 27 Kombinationen in die "richtige" Reihenfolge, dann bekommst du deine Formel. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Patrick_C64 Geschrieben 28. Januar 2014 Teilen Geschrieben 28. Januar 2014 Hi turntab, war auch nur ganz banal, ja die 2. gebotene Lösung erscheint mir auch durchdachter, und hat daher von mir auch ein "Gefällt mir" bekommen! Dennoch habe ich mir wie geschildert dabei schon was gedacht, und wenn mehr Bewertungen abgegeben wurden als Besucher vorhanden dann geht die Formel nicht mehr auf, wobei ich die Anzahl der Bewertungen elementbezogen und nicht systembezogen betrachtet habe! Ist halt die Frage was für Dich im Kontext der Auswertung letzlich plausibel bedeutet, wie Klotzkopp schon aufgeführt hat. Gruß Patrick Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
turntab Geschrieben 29. Januar 2014 Autor Teilen Geschrieben 29. Januar 2014 Die Liste mit den 27 Kombinationen habe ich angefangen, waren aber einige Mind****s dabei. Ist nicht so einfach :-/ Hab einfach mal ein bisschen rumgetüftelt und aus den vielen guten Ansätzen rumgeschraubt. Das Ergebnis bis Dato ist nicht schlecht, bisher passt es. Top 100 - Der besten Restaurants Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.