Ich bin daran interessiert, eine möglichst optimale Methode zu finden, um zu bestimmen, wie viele Fächer ich in einem Histogramm verwenden soll. Meine Daten sollten höchstens 30 bis 350 Objekte umfassen. Insbesondere versuche ich, Schwellenwerte (wie Otsus Methode) anzuwenden, von denen "gute" Objekte, von denen ich weniger haben sollte und die weiter verteilt sein sollten, getrennt sind. " schlechte "Objekte, deren Wert dichter sein sollte. Ein konkreter Wert hätte eine Punktzahl von 1-10 für jedes Objekt. Ich hatte 5-10 Objekte mit Punkten 6-10 und 20-25 Objekte mit Punkten 1-4. Ich würde gerne ein Histogramm-Binning-Muster finden, das es Otsus Methode im Allgemeinen ermöglicht, die Objekte mit niedriger Punktzahl abzuschwächen. Bei der Implementierung von Otsu, die ich gesehen habe, betrug die Bin-Größe jedoch 256, und häufig habe ich viel weniger Datenpunkte als 256. was für mich nahelegt, dass 256 keine gute bin-nummer ist. Welche Ansätze sollten bei so wenigen Daten zur Berechnung der Anzahl der zu verwendenden Fächer verwendet werden?
quelle
Antworten:
In der Basis R können Sie Folgendes verwenden:
Für andere Plot-Bibliotheken ohne diese Option (z. B.
ggplot2
) können Sie die Binwidth wie folgt berechnen:quelle
IQR
?num_bins <- diff(range(x)) / (2 * IQR(x) / length(x)^(1/3))
nclass.FD
existierte vor neun Jahren nicht.Wenn Sie zu wenige Fächer verwenden, werden die Daten im Histogramm nicht wirklich gut dargestellt. Wenn Sie zu viele Fächer haben, erhalten Sie eine gebrochene Kammoptik, die auch keinen Sinn für die Verteilung gibt.
Eine Lösung besteht darin, ein Diagramm zu erstellen, das jeden Wert anzeigt. Entweder ein Punktdiagramm oder eine kumulative Häufigkeitsverteilung, für die keine Klassen erforderlich sind.
Wenn Sie eine Häufigkeitsverteilung mit gleichmäßig verteilten Fächern erstellen möchten, müssen Sie festlegen, wie viele Fächer (oder wie breit jedes Fach ist). Die Entscheidung hängt eindeutig von der Anzahl der Werte ab. Wenn Sie viele Werte haben, sieht Ihr Diagramm besser aus und ist informativer, wenn Sie viele Klassen haben. Diese Wikipedia-Seite listet verschiedene Methoden zur Bestimmung der Behälterbreite anhand der Anzahl der Beobachtungen auf. Die einfachste Methode besteht darin, die Anzahl der Bins gleich der Quadratwurzel der Anzahl der Werte festzulegen, die Sie bündeln.
Diese Seite von Hideaki Shimazaki erklärt eine alternative Methode. Es ist etwas komplizierter zu berechnen, aber es scheint eine großartige Arbeit zu leisten. Der obere Teil der Seite ist eine Java-App. Scrollen Sie darüber hinaus, um die Theorie und Erklärung zu sehen, und scrollen Sie dann weiter, um Links zu den Artikeln zu finden, die die Methode erklären.
quelle
Vielleicht ist die Arbeit " Variations on the histogram " von Denby and Mallows von Interesse:
Sie erwähnen auch, dass Code in R auf Anfrage erhältlich ist.
quelle
Ich bin mir nicht sicher, ob dies eine gute Praxis ist, aber ich tendiere dazu, mehr als ein Histogramm mit unterschiedlichen Behälterbreiten zu erstellen und das zu verwendende Histogramm auszuwählen, basierend darauf, welches Histogramm zu der Interpretation passt, die ich am besten kommunizieren möchte. Obwohl dies die Auswahl des Histogramms etwas objektiver macht, begründe ich dies damit, dass ich viel mehr Zeit hatte, die Daten zu verstehen, als die Person, der ich das Histogramm gebe, und dass ich ihnen daher eine sehr präzise Botschaft übermitteln muss.
Ich bin auch ein großer Fan davon, Histogramme mit der gleichen Anzahl von Punkten in jedem Fach anstatt mit der gleichen Fachbreite zu präsentieren. Ich finde normalerweise, dass diese die Daten viel besser darstellen als die konstante Behälterbreite, obwohl sie mopre schwierig zu produzieren sind.
quelle
Haben Sie die Shimazaki-Shinomoto- Methode gesehen?
Obwohl es rechenintensiv zu sein scheint, kann es zu guten Ergebnissen führen. Es lohnt sich, es zu versuchen, wenn die Rechenzeit nicht Ihr Problem ist. Es gibt einige Implementierungen dieser Methode in Java, MATLAB usw. unter dem folgenden Link, der schnell genug ausgeführt wird: Web-Interface
quelle
Wenn ich die Anzahl der Fächer programmgesteuert bestimmen muss, beginne ich normalerweise mit einem Histogramm, das weit mehr Fächer als erforderlich enthält. Sobald das Histogramm gefüllt ist, kombiniere ich die Bins, bis ich genug Einträge pro Bin für die von mir verwendete Methode habe, z Einträge.
quelle
Bitte sehen Sie diese Antwort als Ergänzung zu Rob Hyndmans Antwort .
Um mit der Freedman-Diaconis-Regel Histogramm-Diagramme mit exakt gleichen Intervallen oder 'binwidths' zu erstellen, entweder mit Basic R oder Package, können wir einen der Funktionswerte verwenden, nämlich . Angenommen, wir möchten ein Histogramm von Daten mit der Freedman-Diaconis-Regel erstellen . In Basic R verwenden wir
ggplot2
hist()
breaks
qsec
mtcars
In der Zwischenzeit verwenden
ggplot2
wir in PaketOder alternativ
Alle von ihnen erzeugen Histogramm-Plots mit exakt den gleichen Intervallen und der gleichen Anzahl von Behältern wie beabsichtigt.
quelle
Ich habe 600 Beobachtungen für Au g / t. Bin Größe 1 gibt mir Folgendes:
Die automatische Auswahl (den Behälterbereich weglassen) ergibt Folgendes:
Die Daten sehen in der ersten und zweiten Grafik so aus, als ob es kein Problem mit der Datenintegrität gibt. Nur die Behältergröße 0,1 (g / t) beantwortet die Frage: Die Messungen waren sowohl ungenau als auch ungenau
Mein Urteil: 1. Es gibt keine Messtechnik auf der Erde, die den wahren Wert eines natürlichen Phänomens aufzeigt. Alle Maße sind ungefähre Werte, einige liegen nahe am wahren Wert. Dies hängt vom Design der Probenahme, der Kalibrierung, der Qualifikation des Menschen usw. ab. 2. Aus diesem Grund ist die Verteilung eher verzerrt als symmetrisch. 3. Die Form der Verteilung sollte jedoch zumindest annähernd einem "glockenartigen" Abschnitt ähneln. Jeweils eine Glocke (außer es gibt mehrere geologische Umgebungen). 4. Die Häufigkeitsverteilung mit der Manipulation der Behältergröße kann dabei helfen, das Muster für die Genauigkeit und Genauigkeit der Messungen zu ermitteln. Damit man eine experimentelle Aufnahme der Behältergröße braucht, anstatt eine in Stein gemeißelte Regel.
quelle