Use to manipulate data sets

dataset { legend <legend> <set> | makexy <Xset> <Yset> 
   [name <name>] | 
   vectorcoord {X|Y|Z} <set> [name <name>] | 
   cat <set0> <set1> ... [name <name>] [nooffset] | 
   make2d <1D set> cols <ncols> rows <nrows> [name <name>] |
   {drop|keep}points {range <range arg> | [start <#>] [stop <#>] [offset <#>]}
   [name <output set>] <set arg1> ... |
   remove <criterion> <select> <value> [and <value2>] [<set selection>] |
   connect {[head <head atom>] [tail <tail atom>]|[headmask <headmask>] [tailmasdim {xdim|ydim|zdim|ndim <#>} [label <label>] [min <min>] [step <step>] | 
   outformat {double|scientific|general} <set arg1> [<set arg 2> ...] |
   invert <set arg0> ... name <new name> [legendset <set>] |
   shift [above <value> by <offset>] [below <value> by <offset>] <set arg0> ...
   [mode <mode>] [type <type>] <set arg1> [<set arg 2> ...]
<mode>: 'distance' 'angle' 'torsion' 'pucker' 'rms' 'matrix' 'vector'
<type>: 'alpha' 'beta' 'gamma' 'delta' 'epsilon' 'zeta' 'nu0' 'nu1' 'nu2' 'nu3'
'nu4' 'h1p' 'c2p' 'chin' 'phi' 'psi' 'chip' 'omega' 'chi2' 'chi3' 'chi4' 'chi5' 'pucker' 'noe' 'distance' 'covariance' 'mass-weighted covariance' 'correlation' 'distance covariance' 'IDEA' 'IRED' 'dihedral covariance'
Options for ’type noe’:
[bound <lower> bound <upper>] [rexp <expected>] [noe_strong [noe_medium][noe_weak]

[name <name>] New data set name for makexy/vectorcoord/cat/make2d/droppoints/keeppoints.
legend <legend> <set> Set the legend for data set <set> to <legend>.
makexy <Xset> <Yset> Create a new data set (optionally named <name>) with X values from <Xset> and Y values from <Yset>.
vectorcoord {X|Y|Z} <set> Extract X/Y/Z coordinates from vector data set into a new 1D data set.
cat <set0> <set1> … Concatenate two or more data sets into a new data set (optionally named <name>). Only works for scalar 1D and string sets.
make2d <1D set> cols <ncols> rows <nrows> Convert 1D data set into row-major 2D data set with specified number of rows and columns.
{ drop | keep } points ...<set arg1> Drop or keep specified points from data set(s), optionally creating a new data set.
range <range arg> Range of points to drop/keep.
[start <#>] [stop <#>] [offset <#>] Start/stop/offset values of points to drop/keep.
remove <criterion> <select> <value> [and <value2>] [<set selection>] Remove data sets from <set selection> according to specified criterion and selection.
<criterion> :   ’ifaverage’  ’ifsize’  ’ifmode’  ’iftype’
<select> :   ’equal’ ’==’ ’notequal’ ’!=’ ’lessthan’ ’<’ ’greaterthan’ ’>’ ’between’  ’outside’

connect <set args> Add/change connect atom information (used by the sequence command) to COORDS set(s). Head atoms connect to previous residue, tail atoms connect to next residue. Can use either absolute atom numbers or atom mask expressions.
[head <head atom>] | [tail <tail atom>] Specify the head/tail atoms by atom number.
[headmask <headmask>] [tailmask >tailmask>] Specify the head/tail atoms by atom mask.
dim {xdim|ydim|zdim|ndim <#>} Change specified dimension in set(s).
label <label> Change dimension label to <label>
min <min> Change dimension minimum to <min>.
step <step> Change dimension step to <step>.

invert <set arg0> ... name <new name> [legendset <set><set arg0> ... Specify sets to invert.
name <new name> Inverted output set name.
[legendset <set>] String data set containing legends shift
[above <value> by <offset>] Values in set(s) above <value> will be shifted by <offset>.
[below <value> by <offset>] Values in set(s) below <value> will be shifted by <offset>.
<set arg0> ... Set(s) to shift.
[mode <mode>] Set data set(s) mode to <mode>.
[type <type>] Set data set(s) type to ’type’, useful for e.g. analysis with statistics. Note this can also be done with ’type <type>’ for certain
commands (distance, dihedral, pucker etc). Note that not every <type> is compatible with a given <mode>.

Options for type noe only:
[bound <lower> bound <upper>] Lower and upper bounds for NOE (in Angstroms); must specify both.
[rexp <expected>] Expected value for NOE (in Angstroms); if not given ’(<lower> + <upper>)’ / 2.0 is used.
[noe_strong] Set lower and upper bounds to 1.8 and 2.9 Å respectively.
[noe_medium] Set lower and upper bounds to 2.9 and 3.5 Å respectively.
[noe_weak] Set lower and upper bounds to 3.5 and 5.0 Å respectively.

Either set the legend for a single data set, create a new set with X values from one set and Y values from another, concatenate 2 or more sets, make a 2D set from 1D set, remove sets according to a certain criterion, or change the mode/type for one or more data sets.

Setting the mode/type can be useful for cases where the data set is being read in from a file; for example when reading in a dihedral data set the type can be set to ‘dihedral’ so that various Analysis routines like statistics know to treat it as periodic. A brief description of possible modes and types follows:

Mode Type Description
distance noe NOE distance.
angle   Angle.
torsion alpha Nucleic acid alpha.
  beta Nucleic acid beta.
  gamma Nucleic acid gamma.
  delta Nucleic acid delta.
  epsilon Nucleic acid epsilon.
  zeta Nucleic acid zeta.
  nu1 Nucleic acid pucker (O4′)
  nu2 Nucleic acid pucker (C4′)
  h1p Nucleic acid H1′.
  c2p Nucleic acid C2′.
  chin Nucleic acid chi.
  phi Protein phi.
  psi Protein psi.
  chip Protein chi.
  omega Protein omega.
pucker pucker Sugar pucker.
rms   RMSD.
matrix distance Distance matrix.
  covariance Cartesian covariance matrix.
  ‘mass-weighted covariance’ Mass weighted Cartesian covariance matrix.
  correlation Dynamic cross correlation matrix.
  ‘distance covariance’ Distance covariance matrix.
  IDEA IDEA matrix.
  IRED IRED matrix.
  ‘dihedral covariance’ Dihedral covariance matrix.
vector IRED IRED vector.

The invert mode takes a group of M 1D data sets of size N and create N new “inverted” data sets of size M. This is similar to the invert keyword already available for standard and Grace data writes, but operates directly on data sets. For example, given the following two data sets:

D0 D1
1  4
2  5
3  6

The new data sets will be laid out like so:

N0 N1 N2
1  2  3
4  5  6

The dataset invert command can be useful if you want to easily view output from multiple analysis commands in a single graph. For example, to view state counts from two diferent simulations side by side:

calcstate name Sim1 state bound1,dist1,0.0,2.0
calcstate name Sim2 state bound1,dist1,0.0,2.0
runanalysis dataset invert Sim[Count] name Inverted legendset Sim1[Name]
dataset dim xdim label Simulation min 1 step 1 Inverted
writedata statecount.agr Inverted*

The dataset shift command can be used for wrapping circular values, such as torsions. For example, to ensure a pucker has a range from 0 to 360 instead of -180 to 180:

pucker Furanoid @C2 @C3 @C4 @C5 @O2 cremer out CremerF.dat amplitude
dataset shift Furanoid below 0 by 360