Wie gruppiere ich eine Liste der numerischen Werte in Bereiche Kreuz Validated

Warum gruppieren? Stattdessen wie Schätzung über die Wahrscheinlichkeitsdichtefunktion (PDF) der Verteilungen, aus denen entstehen die Daten? Hier ist ein R-basiertes Beispiel:







Wenn die Daten streng begrenzt sind (0, 2000000), dann die Kerndichteschätzung ist vielleicht nicht am besten geeignet. Sie könnten Dinge fälschen, indem sie es fragen die Dichte zwischen den Grenzen nur zu bewerten:

Alternativ gibt es das Histogramm - eine grobe Version des Kernels Dichte. Was Sie konkret darüber sprechen, ist Ihre Binning. Es gibt viele Regeln / Ansätze auf gleiche Breite bins Auswahl (das heißt die Anzahl der Bins) aus den Daten. In R ist die Standard-Sturges Regel, aber es enthält auch die Freedman-Diaconis Regel und Scotts Regel. Es gibt auch andere - siehe Wikipedia-Seite über Histogramme.

Wenn Sie in dem Kernel-Density-Plot nicht interessiert oder das Histogramm per se, sondern nur die klassierten Daten, dann können Sie die Anzahl der Bins berechnen die nclass.X Familie von Funktionen, wobei X eine von Sturges ist. scott oder FD. Und dann verwendet Schnitt (), um sind Ihre Daten:

Ich nehme an, dass Sie bereits die Anzahl der Kategorien bestimmt werden Sie verwenden. Angenommen, Sie haben 20 Kategorien verwenden möchten. Dann werden sie sein:







  • Kategorie 1: [0 - 100.000)
  • Kategorie 2: [100.000 - 200.000)
  • Kategorie 3: [200.000 - 300.000)
  • .
  • Kategorie 19: [1,800,000 - 1,900,000)
  • Kategorie 20: [1,900,000 - 2,000,000]

Beachten Sie, dass das Etikett jeder Kategorie kann definiert werden als

Dies ist trivial als eine berechnete Spalte in SQL oder als Formel in Excel zu definieren.

Beachten Sie, dass die letzte Kategorie als die anderen unendlich größer ist, geschlossen ist, es auf beiden Seiten da. Wenn Sie einen Wert zu erhalten, von genau 2.000.000 passieren könnte man fälschlicherweise klassifizieren es als fallen in die Kategorie 21, so müssen Sie diese Ausnahme mit einem hässlichen behandeln „IF“ (in Excel) oder „CASE“ (in SQL).

Obwohl die FLOOR Antwort wahrscheinlich schöner ist, können Sie dies mit einem vlookup.

Die erste Spalte der Nachschlagtabelle (siehe unten) ist die untere Grenze von jedem Ihrer Bins. Dann geben Sie eine Formel, um die Etiketten in der zweiten Spalte zu machen (Formel dargestellt ist, und das Ergebnis der Formel in der dritten Spalte -. Natürlich würde man nur zwei Spalten hat) Beachten Sie die letzten beiden Zeilen der Tabelle wackelig sind - vorletzter hat eine andere Formel, weil Sie es die unbeschränkte „größer als“ Fall sein wollen (es sei denn, Sie das nicht wollen, dann die Formel ändern - Sie dies einrichten können, wie Sie wollen).

Sie würden diese Formel (vorausgesetzt, die Werte einzugeben, die Sie sind wollen, sind in Col A, und die Lookup-Tabelle ist in cols F:. G irgendwo Beachten Sie die TRUE Parameter, so vlookup muss nicht eine genaue Übereinstimmung zu finden.

Dies ist, was die Lookup-Tabelle würde wie folgt aussehen: