Operations on tables

From Dynamo
Jump to: navigation, search

Extraction of subtables

The basic command to choose elements inside a table is dtgrep. Commands are <, top and {{t|bottom}.

Other commands: dtsplit

Selecting sets of tags

In order to create a subtable with a predefined set of tags, use the flagtags:

tr = dtgrep(t,'tags',[5,9,11:15]);

would explore the table t and create the output table tr, including only the tags 5,9, 11:15.

Excluding sets of tags

In order to exclude a set of tags, use the flag exclude:

tr = dtgrep(t,'exclude',[5,9,11:15]);

would explore the table t and create the output table tr, excluding any rows with tags 5,9, 11:15.

Selecting subtables by property

The flag tr (for table restriction) allows operating restrictions on a table.

By property name

If you know the shortname of the property, you can use directly:

<> >> tRestricted = dtgrep(t,'tr','0.3<cc<0.5'); 
<> operator 0.3<cc<0.5 (#1) 100 before, 16 after

By column number

<<tt>> >> tRestricted= dtgrep(t,'tr','0.3<&10<0.5'); 
<> operator 0.3<cc<0.5 (#1) 100 before, 16 after

Top and bottom hits

The flag <tt>tr allows selection of the tags that score best or worst for a given property, with syntax

  <property>[top]<number>   or  <property>[bottom]<number> 

where <property><tt> can be given as column number preceded by <tt>&, or by column name:

   dtgrep example.tbl -tr &10[top]25 -o output.tbl 
   dtgrep example.tbl -tr cc[top]25 -o output.tbl 

both selects the 25 best particles (according to the cc coded in column 10) in table example.tbl and writes the subtable in file output.tbl.

Geometrical operations on tables

Rigid body operations can be applied onto tables with dynamo_rigid_apply or Template:Dynamo table rotate