acalculator

What is the frequency distribution?

Paste a list of numbers to get its frequency table. Group the numbers into classes of a width you choose, or give each value its own row, and read the relative and cumulative frequencies.

Your numbers

Read as: 59; 62; 66; 68; 71; 74; 75; 77; 78; 81; 83; 83; 84; 85; 86; 88; 90; 92; 95; 97
Group by
Most common
80 to under 90, with 7 of 20 numbers

The most common row of the frequency distribution is 80 to under 90, with 7 of 20 numbers.

Rows
5
Count (n)
20

Most common: 80 to under 90, with 7 of 20 numbers. The most common row of the frequency distribution is 80 to under 90, with 7 of 20 numbers.

Frequency of each row

Frequency table

How to calculate

Makes a frequency table from a list of numbers, by equal-width classes or by each value, with the frequency, relative frequency, and cumulative frequencies of each row.

Example with the default inputs (Your numbers [59, 62, 66, 68, 71, 74, 75, 77, 78, 81, 83, 83, 84, 85, 86, 88, 90, 92, 95, 97], Group by Classes, Class width 10): The most common row of the frequency distribution is 80 to under 90, with 7 of 20 numbers.

Method: Classes: start = ⌊min ÷ w⌋ × w unless typed; a number x goes to class ⌊(x − start) ÷ w⌋; relative frequency = f ÷ n; cumulative frequency adds f row by row.

  • Classes include their lower edge and leave out their upper edge, so a number on an edge counts in the class that starts there.
  • Empty classes between the first and last number stay in the table with a frequency of 0.

Machine-readable copies: Markdown, JSON.

Worked examples

Each example is checked against the calculator on every build.

  1. Your numbers 59, 62, 66, 68, 71, 74, 75, 77, 78, 81, 83, 83, 84, 85, 86, 88, 90, 92, 95, 97, Group by Classes, Class width 10 gives Most common 80 to under 90, with 7 of 20 numbers, Rows 5, Count (n) 20.Source: OpenStax, Introductory Statistics 2e, §1.3 Frequency, Frequency Tables, and Levels of Measurement (frequency, relative frequency = frequency ÷ total, cumulative relative frequency), https://openstax.org/books/introductory-statistics-2e/pages/1-3-frequency-frequency-tables-and-levels-of-measurement (retrieved 2026-10-05); OpenStax, Introductory Statistics 2e, §2.2 Histograms, Frequency Polygons, and Time Series Graphs (equal-width classes from a starting point), https://openstax.org/books/introductory-statistics-2e/pages/2-2-histograms-frequency-polygons-and-time-series-graphs (retrieved 2026-10-05)
  2. Your numbers 2, 3, 2, 5, 3, 3, 7, 5, 2, 3, 5, 5, 3, 5, 5, 2, 5, 3, 7, 7, Group by Each value gives Most common 5, with 7 of 20 numbers, Rows 4.Source: OpenStax, Introductory Statistics 2e, §1.3 Frequency, Frequency Tables, and Levels of Measurement (frequency, relative frequency = frequency ÷ total, cumulative relative frequency), https://openstax.org/books/introductory-statistics-2e/pages/1-3-frequency-frequency-tables-and-levels-of-measurement (retrieved 2026-10-05)
  3. Your numbers 0.1, 0.2, 0.3, 0.35, Group by Classes, Class width 0.1, First class starts at 0.1 gives Most common 0.3 to under 0.4, with 2 of 4 numbers, Rows 3.Source: OpenStax, Introductory Statistics 2e, §2.2 Histograms, Frequency Polygons, and Time Series Graphs (equal-width classes from a starting point), https://openstax.org/books/introductory-statistics-2e/pages/2-2-histograms-frequency-polygons-and-time-series-graphs (retrieved 2026-10-05)

How it works

By classes (the default), with class width w > 0:

  • The first class starts at the value you type, or, if you leave it empty, at the largest multiple of w that is at or below the smallest number: ⌊min ÷ w⌋ × w.
  • Class j (from 0) runs from start + j × w up to, but not including, start + (j + 1) × w. A number x goes to class ⌊(x − start) ÷ w⌋, so a number on an edge counts in the class that starts there.
  • Classes continue until the largest number is covered. Empty classes in between stay in the table with frequency 0.
  • Each class is labelled "lower to under upper", with its edges as exact decimals (10 significant digits, half up, true minus sign).

By each value: one row for each different number, smallest first, labelled with the number.

For each row:

  • Frequency f: how many numbers fall in the row.
  • Relative frequency = f ÷ n, shown to 4 decimals.
  • Cumulative frequency: the frequencies of this row and every row before it, added up.
  • Cumulative relative frequency = cumulative frequency ÷ n, shown to 4 decimals.

The headline names the row (or rows, on a tie, joined by "and") with the highest frequency: "label, with f of n numbers", adding "each" on a tie.

Rules:

  • 1 to 10,000 numbers. The class width is at most 10¹², and the start between −10¹² and 10¹².
  • A start above the smallest number, a width that makes more than 1,000 classes, or more than 1,000 different values by each value, gives no answer, with a message.
  • The class of each number is found exactly on the decimals you type, so 0.3 with width 0.1 from 0.1 lands in the class 0.3 to under 0.4.

Worked examples by hand

59, 62, 66, 68, 71, 74, 75, 77, 78, 81, 83, 83, 84, 85, 86, 88, 90, 92, 95, 97 (the default: 20 scores, width 10). The smallest is 59, so the first class starts at ⌊59 ÷ 10⌋ × 10 = 50.

ClassFrequencyRelativeCumulativeCumulative relative
50 to under 6010.0510.05
60 to under 7030.1540.20
70 to under 8050.2590.45
80 to under 9070.35160.80
90 to under 10040.20201.00

The most common class is 80 to under 90, with 7 of 20 numbers, in 5 rows.

2, 3, 2, 5, 3, 3, 7, 5, 2, 3, 5, 5, 3, 5, 5, 2, 5, 3, 7, 7, by each value (hours worked, in the style of OpenStax §1.3). 2 appears 4 times, 3 six times, 5 seven times and 7 three times, so the relative frequencies are 0.20, 0.30, 0.35 and 0.15. The most common value is 5, with 7 of 20 numbers, in 4 rows.

0.1, 0.2, 0.3, 0.35, width 0.1 starting at 0.1. The classes 0.1 to under 0.2, 0.2 to under 0.3 and 0.3 to under 0.4 hold 1, 1 and 2 numbers. The most common class is 0.3 to under 0.4, with 2 of 4 numbers, in 3 rows.

Other questions people ask

What is a frequency distribution?

A frequency distribution is a table that shows how often each value, or each range of values, appears in a data set. Each row gives a class or value and its frequency, the number of times it occurs.

How do I make a frequency distribution table?

Pick a class width, start the first class at or below the smallest number, and add classes of that width until the largest number is covered. Then count the numbers in each class. For 20 test scores with width 10 starting at 50, the counts are 1, 3, 5, 7 and 4.

What is relative frequency?

Relative frequency is a row's frequency divided by the total number of values. If 7 of 20 scores are in the 80s, the relative frequency is 7 ÷ 20 = 0.35, or 35%. The relative frequencies add up to 1.

What is cumulative frequency?

Cumulative frequency adds the frequencies row by row, so each row shows how many values are in it or any row before it. The last row's cumulative frequency is the total count, and its cumulative relative frequency is 1.

How do I choose the class width?

Divide the range (largest minus smallest) by the number of classes you want, usually 5 to 15, and round up to a convenient number. Wider classes give a simpler table; narrower ones show more detail.

Which class does a number on a class edge go into?

Each class includes its lower edge and stops just under its upper edge. So with classes 70 to under 80 and 80 to under 90, a score of 80 counts in the 80s.