# Making Tables of Values

You can use lists as tables of values. You can generate the tables, for example, by evaluating an expression for a sequence of different parameter values.

This gives a table of the values of , with running from 1 to 6:
 In:= Out= Here is a table of for from to :
 In:= Out= This gives the numerical values:
 In:= Out= You can also make tables of formulas:
 In:= Out= Table uses exactly the same iterator notation as the functions Sum and Product, which are discussed in "Sums and Products":
 In:= Out= This makes a table with values of x running from 0 to 1 in steps of 0.25:
 In:= Out= You can perform other operations on the lists you get from Table:
 In:= Out= TableForm displays lists in a "tabular" format. Notice that both words in the name TableForm begin with capital letters:
 In:= Out//TableForm= All the examples so far have been of tables obtained by varying a single parameter. You can also make tables that involve several parameters. These multidimensional tables are specified using the standard Wolfram Language iterator notation, discussed in "Sums and Products".

This makes a table of with running from 1 to 3 and running from 1 to 2:
 In:= Out= The table in this example is a list of lists. The elements of the outer list correspond to successive values of . The elements of each inner list correspond to successive values of , with fixed.

Sometimes you may want to generate a table by evaluating a particular expression many times, without incrementing any variables.

This creates a list containing four copies of the symbol x:
 In:= Out= This gives a list of four pairs of numbers sampled from {1,2,3,4}. Table reevaluates RandomSample[{1,2,3,4},2] for each element in the list, so that you get four different samples:
 In:= Out= This evaluates for each of the values of i in the list {1,4,9,16}:
 In:= Out= This creates a 3×2 table:
 In:= Out= In this table, the length of the rows depends on the more slowly varying iterator variable, i:
 In:= Out= You can use Table to generate arrays with any number of dimensions.

This generates a threedimensional 2×2×2 array. It is a list of lists of lists:
 In:= Out= Table[f,{imax}] give a list of imax values of f Table[f,{i,imax}] give a list of the values of f as i runs from 1 to imax Table[f,{i,imin,imax}] give a list of values with i running from imin to imax Table[f,{i,imin,imax,di}] use steps of di Table[f,{i,imin,imax},{j,jmin,jmax},…] generate a multidimensional table Table[f,{i,{i1,i2,…}] give a list of the values of f as i successively takes the values i1, i2, … TableForm[list] display a list in tabular form

Functions for generating tables.

You can use the operations discussed in "Manipulating Elements of Lists" to extract elements of the table.

This creates a table and gives it the name sq:
 In:= Out= This gives the third part of the table:
 In:= Out= This gives a list of the third through fifth parts:
 In:= Out= This creates a 2×2 table, and gives it the name m:
 In:= Out= This extracts the first sublist from the list of lists that makes up the table:
 In:= Out= This extracts the second element of that sublist:
 In:= Out= This does the two operations together:
 In:= Out= This displays m in a "tabular" form:
 In:= Out//TableForm= t[[i]] or Part[t,i] give the i sublist in t (also input as t〚i〛) t[[i;;j]] or Part[t,i;;j] give a list of the parts i through j t[[{i1,i2,…}]] or Part[t,{i1,i2,…}] give a list of the i1, i2, … parts of t t[[i,j,…]] or Part[t,i,j,…] give the part of t corresponding to t[[i]][[j]]…

Ways to extract parts of tables.

As mentioned in "Manipulating Elements of Lists", you can think of lists in the Wolfram Language as being analogous to "arrays". Lists of lists are then like twodimensional arrays. When you lay them out in a tabular form, the two indices of each element are like its and coordinates.