1.8.2 Making Tables of ValuesYou 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[1]:=
Table[i^2, {i, 6}]
|
Out[1]=
|
|
| This gives the numerical values. | |
Out[3]=
|
|
| You can also make tables of formulas. | |
In[4]:=
Table[x^i + 2i, {i, 5}]
|
Out[4]=
|
|
| Table uses exactly the same iterator notation as the functions Sum and Product, which were discussed in Section 1.5.4. | |
In[5]:=
Product[x^i + 2i, {i, 5}]
|
Out[5]=
|
|
| This makes a table with values of x running from 0 to 1 in steps of 0.25. | |
In[6]:=
Table[Sqrt[x], {x, 0, 1, 0.25}]
|
Out[6]=
|
|
| You can perform other operations on the lists you get from Table. | |
Out[7]=
|
|
| TableForm displays lists in a "tabular" format. Notice that both words in the name TableForm begin with capital letters. | |
Out[8]//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 Mathematica iterator notation, discussed in Section 1.5.4. 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. | |
Out[10]=
|
|
| This gives a list of four pseudorandom numbers. Table re-evaluates Random[ ] for each element in the list, so that you get a different pseudorandom number. | |
In[11]:=
Table[Random[ ], {4}]
|
Out[11]=
|
|
Table[f, { }] | give a list of values of f | Table[f, {i, }] | give a list of the values of f as i runs from 1 to | Table[f, {i, , }] | give a list of values with i running from to | Table[f, {i, , , di}] | use steps of di |
Table[f, {i, , }, {j, , }, ... ]
| | generate a multidimensional table | | TableForm[list] | display a list in tabular form |
Functions for generating tables. You can use the operations discussed in Section 1.2.4 to extract elements of the table. This creates a table, and gives it the name m. | |
In[12]:=
m = Table[i - j, {i, 2}, {j, 2}]
|
Out[12]=
|
|
| This extracts the first sublist from the list of lists that makes up the table. | |
Out[13]=
|
|
| This extracts the second element of that sublist. | |
Out[14]=
|
|
| This does the two operations together. | |
Out[15]=
|
|
| This displays m in a "tabular" form. | |
Out[16]//TableForm=
|
|
| t[[i]] or Part[t, i] | give the i sublist in t (also input as t i ) |
t[[{ , , ... }]] or Part[t, { , , ... }]
| | give a list of the  ,  , ... 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 we mentioned in Section 1.2.4, you can think of lists in Mathematica as being analogous to "arrays". Lists of lists are then like two-dimensional arrays. When you lay them out in a tabular form, the two indices of each element are like its and coordinates. You can use Table to generate arrays with any number of dimensions. This generates a three-dimensional array. It is a list of lists of lists. | |
In[17]:=
Table[i j^2 k^3, {i, 2}, {j, 2}, {k, 2}]
|
Out[17]=
|
|
|