tablemerge - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


tablemerge

merge tables

 

Calling Sequence

Parameters

Options

Summary

Description

Details

Examples

Compatibility

Calling Sequence

tablemerge(t1, t2, options)

tablemerge(t1, t2, f, b1, ..., bn, options)

Parameters

t1, t2

-

tables or list/sets of equations

f

-

optional combiner function

b1, ..., bn

-

(optional) extra arguments

options

-

(optional) optional argument inplace

Options

• 

inplace = truefalse

  

Indicates that t1 should be modified in memory instead of allocating a new table.

Summary

• 

Returns a table which is the result of merging tables t1 and t2 subject to optional combiner f.

Description

• 

tablemerge(t1,t2) returns a table t whose keys are all of the keys occurring in either of the tables t1 or t2. The entries in the merged table corresponding to these keys are determined as follows:

– 

When a key k appears in exactly one of t1 or t2, the entry is unchanged from its original value in t1 or t2.

– 

When a key appears in both t1 and t2 and a combiner f was not provided, the entry from t2 is used.

– 

When a key k appears in both t1 and t2 and a combiner f was provided, the entry for k is f(t1[k],t2[k]).

• 

Additional arguments b1, ..., bn are passed to f.

• 

Each input t1 and t2 may also be a list or set of equations, in which case the merging is performed as though they were tables whose key/value pairs correspond to the equations. The object returned matches that of t1; if t1 is a list, the result is a list.

• 

If t1 is a list, its key order is respected in the result. Similarly if both t1 and t2 are lists, any keys appearing in the result which were not present in t1 are ordered in the manner they appear in t2.

Details

• 

The indexing function for the table returned by tablemerge is identical to the indexing function for t1. Any indexing function used in t2 will be ignored in the merge.

Examples

Merge a table with entries for "lunch" and "dessert", overriding the latter.

tablemergetablelunch=sandwich,dessert=apple,tabledessert=orange

tablelunch=sandwich,dessert=orange

(1)

Merge using union as the merge operation.

tablemergetable1=2,3,5,2=6,10,15,table1=7,11,13,`union`

table1=2,3,5,7,11,13,2=6,10,15

(2)

Merge using concatenation as the merge operation.

tablemergetableMessage=Hello ,tableMessage=World!,cat

tableMessage=Hello World!

(3)

Merge using concatenation, but using a custom delimiter as a 4th argument.

cat_delim := proc(x,y,delim) cat(x, delim, y) end proc:

tablemergetablepet=dog,vehicle=bike,tablepet=cat,vehicle=car,cat_delim,,

tablevehicle=bike,car,pet=dog,cat

(4)

Merge a table with symmetric indexing with one with ordinary indexing.

Atablesymmetric,1,2=A

Atablesymmetric,1,2=A

(5)

Btable1,2,3=B

Btable1,2,3=B

(6)

CtablemergeA,B

Ctablesymmetric,1,2,3=B,1,2=A

(7)

C3,1,2

B

(8)

Merge a list of equations with another list of equations.

L1A=1,B=3,C=5,E=9

L1A=1,B=3,C=5,E=9

(9)

L2B=8,D=7,Z=52

L2B=8,D=7,Z=52

(10)

tablemergeL1,L2

A=1,B=8,C=5,E=9,D=7,Z=52

(11)

Compatibility

• 

The tablemerge command was introduced in Maple 2015.

• 

For more information on Maple 2015 changes, see Updates in Maple 2015.

• 

The tablemerge command was updated in Maple 2022.

• 

The  option was updated in Maple 2022.

See Also

indices

table