# How to join many tables side by side?

I have function for table $$t$$

t[n_] := Table[i*n, {i, 1, 3}];


For example t[1]=(1, 2, 3), t[2]=(2, 4, 6), and t[3]=(3, 6, 9)

To join $$n=3$$ tables side by side into $$3\times3$$ matrix I use

tall = Join[{t[1], t[2], t[3]}];


How to generalize coding for to work for $$n=10, 100$$ or $$1000$$ tables? With big number $$m$$ gives $$m \times 3$$ matrix.

• t /@ Range[100]?
– kglr
Dec 15, 2019 at 5:51

This

t[1]={1, 2, 3}; t[2]={2, 4, 6}; t[3]={3, 6, 9};t[4]={4,8,12};
tall=Table[t[i],{i,4}]


instantly gives you

{{1,2,3},{2,4,6},{3,6,9},{4,8,12}}


Replace the 4 with 10 or 100 or 1000

To get m tables, you can Map the function t on Range[m]:

m = 7;
t /@ Range[m]


{{1, 2, 3}, {2, 4, 6}, {3, 6, 9}, {4, 8, 12}, {5, 10, 15}, {6, 12, 18}, {7, 14, 21}}

Alternatively, you can use Array:

Array[t, m]


{{1, 2, 3}, {2, 4, 6}, {3, 6, 9}, {4, 8, 12}, {5, 10, 15}, {6, 12, 18}, {7, 14, 21}}

Add a DownValue to t such that it can also take a start n and an end m integer

t[n_] := Table[i*n, {i, 1, 3}];
t[n_, m_:0] := Table[i*(n+j), {j, 0, m-n}, {i, 1, 3}]


E.g.

t[5]


{5,10,15}

t[3,5]


{{3, 6, 9}, {4, 8, 12}, {5, 10, 15}}