Categories &

Functions List

Function Reference: tabulate

statistics: tabulate (x)
statistics: table = tabulate (x)

Calculate a frequency table.

tabulate (x) displays a frequency table of the data in the vector x. For each unique value in x, the tabulate function shows the number of instances and percentage of that value in x.

table = tabulate (x) returns the frequency table, table, as a numeric matrix when x is numeric and as a cell array otherwise. When an output argument is requested, tabulate does not print the frequency table in the command window.

If x is numeric, any missing values (NaNs) are ignored.

If all the elements of x are positive integers, then the frequency table includes 0 counts for the integers between 1 and max (x) that do not appear in x.

See also: bar, pareto

Source Code: tabulate

Example: 1

 

 ## Generate a frequency table for a vector of data in a cell array
 load patients

 ## Display the first seven entries of the Gender variable
 gender = Gender(1:7)

 ## Compute the equency table that shows the number and
 ## percentage of Male and Female patients
 tabulate (Gender)

gender =
{
  [1,1] = Male
  [2,1] = Male
  [3,1] = Female
  [4,1] = Female
  [5,1] = Female
  [6,1] = Female
  [7,1] = Female
}

   Value    Count    Percent
    Male       47      47.00%
  Female       53      53.00%
                    

Example: 2

 

 ## Create a frequency table for a vector of positive integers
 load patients

 ## Display the first seven entries of the Gender variable
 height = Height(1:7)

 ## Create a frequency table that shows, in its second and third columns,
 ## the number and percentage of patients with a particular height.
 table = tabulate (Height);

 ## Display the first and last seven entries of the frequency table
 first = table(1:7,:)

 last = table(end-6:end,:)

height =

   71
   69
   64
   67
   64
   68
   64

first =

   1   0   0
   2   0   0
   3   0   0
   4   0   0
   5   0   0
   6   0   0
   7   0   0

last =

   66   15   15
   67    6    6
   68   15   15
   69    8    8
   70   11   11
   71   10   10
   72    4    4

                    

Example: 3

 

 ## Create a frequency table from a character array
 load carsmall

 ## Tabulate the data in the Origin variable, which shows the
 ## country of origin of each car in the data set
 tabulate (Origin)

    Value    Count    Percent
      USA       69      69.00%
   France        4       4.00%
    Japan       15      15.00%
  Germany        9       9.00%
   Sweden        2       2.00%
    Italy        1       1.00%
                    

Example: 4

 

 ## Create a frequency table from a numeric vector with NaN values
 load carsmall

 ## The carsmall dataset contains measurements of 100 cars
 total_cars = length (MPG)
 ## For six cars, the MPG value is missing
 missingMPG = length (MPG(isnan (MPG)))

 ## Create a frequency table using MPG
 tabulate (MPG)
 table = tabulate (MPG);

 ## Only 94 cars were used
 valid_cars = sum (table(:,2))

total_cars = 100
missingMPG = 6
  Value    Count    Percent
     18        4       4.26%
     15        5       5.32%
     16        2       2.13%
     17        1       1.06%
     14        5       5.32%
     24        4       4.26%
     22        4       4.26%
     21        2       2.13%
     27        6       6.38%
     26        4       4.26%
     25        5       5.32%
     10        2       2.13%
     11        1       1.06%
      9        1       1.06%
     28        4       4.26%
   17.5        2       2.13%
   15.5        1       1.06%
   14.5        1       1.06%
   22.5        1       1.06%
     29        3       3.19%
   24.5        1       1.06%
     33        1       1.06%
     20        2       2.13%
   18.5        1       1.06%
   29.5        1       1.06%
     32        4       4.26%
   26.5        1       1.06%
     13        4       4.26%
     19        2       2.13%
   16.5        2       2.13%
     34        2       2.13%
     31        3       3.19%
     23        1       1.06%
     36        5       5.32%
     37        1       1.06%
     38        4       4.26%
     44        1       1.06%
valid_cars = 94