<h2>org.das2.qds.DataSetOps</h2><p>Useful operations for QDataSets, such as slice2, leafTrim.
 TODO: identify which functions appear here instead of Ops.java.</p>
<h2>DataSetOps( )</h2>
<p></p>

<hr>
<a name="DS_LENGTH_LIMIT"></a>
<h2>DS_LENGTH_LIMIT</h2>
<p>absolute length limit for plots.  This is used to limit the elements used in autoranging, etc.</p>

<hr>
<a name="addElement"></a>
<h2>addElement</h2>
addElement( int[] array, int value ) &rarr; int[]

<p>adds an element to the array</p>

<h3>Parameters</h3>
array - length N array
<br>
value - the value to append

<h3>Returns:</h3>
array with the element, length N+1.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=addElement&unscoped_q=addElement">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#addElement">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l432">[view source]</a>
<br>
<br>
addElement( int value, int[] array ) &rarr; int[]<br>
<hr>
<a name="applyIndex"></a>
<h2>applyIndex</h2>
applyIndex( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> indices ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>return the dataset with records rearranged according to indices.</p>

<h3>Parameters</h3>
ds - rank N dataset, where N>0
<br>
indices - rank 1 dataset, length m.

<h3>Returns:</h3>
length m rank N dataset.
<h3>See Also:</h3>
<a href='null'>applyIndex(QDataSet, int, QDataSet, boolean)</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=applyIndex&unscoped_q=applyIndex">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#applyIndex">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l684">[view source]</a>
<br>
<br>
applyIndex( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int idim, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> sort, boolean deps ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/WritableDataSet.html'>org.das2.qds.WritableDataSet</a><br>
<hr>
<a name="applyIndexAllLists"></a>
<h2>applyIndexAllLists</h2>
applyIndexAllLists( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> rods, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet[]</a> lists ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/ArrayDataSet.html'>org.das2.qds.ArrayDataSet</a>

<p>handle special case where rank 1 datasets are used to index a rank N array.  Supports negative indices.
 This was extracted from PyQDataSet because it should be useful in Java codes as well.</p>

<h3>Parameters</h3>
rods - the dataset
<br>
lists - datasets of rank 0 or rank 1

<h3>Returns:</h3>
the array extracted.
<h3>See Also:</h3>
<a href='null'>applyIndex which is similar</a> which is similar<br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=applyIndexAllLists&unscoped_q=applyIndexAllLists">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#applyIndexAllLists">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l786">[view source]</a>
<br>
<br>
<hr>
<a name="applyIndexInSitu"></a>
<h2>applyIndexInSitu</h2>
applyIndexInSitu( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/WritableDataSet.html'>org.das2.qds.WritableDataSet</a> ds, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> sort ) &rarr; void

<p>apply the sort to the data on the zeroth dimension.  The dataset
 must be mutable, and the dataset itself is modified.  This was introduced
 to support AggregatingDataSource but should be generally useful.</p>

<h3>Parameters</h3>
ds - a writable dataset that is still mutable.
<br>
sort - the new sort indeces.

<h3>Returns:</h3>
void (returns nothing)

<br><br>
<a href="https://github.com/autoplot/dev/search?q=applyIndexInSitu&unscoped_q=applyIndexInSitu">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#applyIndexInSitu">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l529">[view source]</a>
<br>
<br>
<hr>
<a name="boundsContains"></a>
<h2>boundsContains</h2>
boundsContains( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bounds, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Datum.html'>Datum</a> xValue, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Datum.html'>Datum</a> yValue ) &rarr; boolean

<p>return true of the bounds overlaps with the x and y values.</p>

<h3>Parameters</h3>
bounds - bounding box
<br>
xValue - the x range
<br>
yValue - the y range

<h3>Returns:</h3>
true of the bounds overlap
<br><br>
<a href="https://github.com/autoplot/dev/search?q=boundsContains&unscoped_q=boundsContains">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#boundsContains">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2728">[view source]</a>
<br>
<br>
<hr>
<a name="bundleNames"></a>
<h2>bundleNames</h2>
bundleNames( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundleDs ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>return the names of the dataset that can be unbundled.</p>

<h3>Parameters</h3>
bundleDs - a QDataSet

<h3>Returns:</h3>
and array of the bundle names.
<h3>See Also:</h3>
<a href='null'>DataSetOps#unbundle(QDataSet, java.lang.String)</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=bundleNames&unscoped_q=bundleNames">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#bundleNames">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1395">[view source]</a>
<br>
<br>
<hr>
<a name="changesDimensions"></a>
<h2>changesDimensions</h2>
changesDimensions( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> p ) &rarr; boolean

<p>indicate if this one operator changes the dimensions.  For example, 
 |smooth doesn't change the dimensions, but fftPower and slice do.</p>

<h3>Parameters</h3>
p - the filter, e.g. "|smooth"

<h3>Returns:</h3>
true if the dimensions change.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=changesDimensions&unscoped_q=changesDimensions">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#changesDimensions">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2385">[view source]</a>
<br>
<br>
changesDimensions( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c0, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c1 ) &rarr; boolean<br>
<hr>
<a name="changesIndependentDimensions"></a>
<h2>changesIndependentDimensions</h2>
changesIndependentDimensions( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> p ) &rarr; boolean

<p>indicate if this one operator changes the independent dimensions.  For example, 
 |smooth doesn't change the dimensions, but |multiply also doesn't change the independent dimension.</p>

<h3>Parameters</h3>
p - the filter, e.g. "|smooth"

<h3>Returns:</h3>
true if the dimensions change.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=changesIndependentDimensions&unscoped_q=changesIndependentDimensions">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#changesIndependentDimensions">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2425">[view source]</a>
<br>
<br>
changesIndependentDimensions( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c0, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c1 ) &rarr; boolean<br>
<hr>
<a name="dbAboveBackgroundDim0"></a>
<h2>dbAboveBackgroundDim0</h2>
dbAboveBackgroundDim0( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, double level ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>normalize the level-th percentile from:
   rank 1: each element (same as removeBackground1)
   rank 2: each column of the dataset
   rank 3: each column of each rank 2 dataset slice.
 There must be at least 10 elements.  If the data is already in dB, then the result is a difference.
 This is assuming the units are similar to voltage, not a power, we think,
 containing code like 20 * Math.log10( ds / background ).</p>

<h3>Parameters</h3>
ds - a QDataSet
<br>
level - the percentile level, e.g. 10= 10%

<h3>Returns:</h3>
the result dataset, in dB above background.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=dbAboveBackgroundDim0&unscoped_q=dbAboveBackgroundDim0">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#dbAboveBackgroundDim0">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2182">[view source]</a>
<br>
<br>
<hr>
<a name="dbAboveBackgroundDim1"></a>
<h2>dbAboveBackgroundDim1</h2>
dbAboveBackgroundDim1( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, double level ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>normalize the nth-level percentile from:<ul>
   <li>rank 1: each element 
   <li>rank 2: each row of the dataset
   <li>rank 3: each row of each rank 2 dataset slice.
 </ul>
 If the data is already in dB, then the result is a difference.
 This is assuming the units are similar to voltage, not a power, we think,
 containing code like 20 * Math.log10( ds / background ).</p>

<h3>Parameters</h3>
ds - a QDataSet
<br>
level - the percentile level, e.g. 10= 10%

<h3>Returns:</h3>
the result dataset, in dB above background.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=dbAboveBackgroundDim1&unscoped_q=dbAboveBackgroundDim1">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#dbAboveBackgroundDim1">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2072">[view source]</a>
<br>
<br>
dbAboveBackgroundDim1( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, double level, boolean power ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a><br>
<hr>
<a name="dependBounds"></a>
<h2>dependBounds</h2>
dependBounds( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>return a bounding qube of the independent dimensions containing
 the dataset.  If r is the result of the function, then for<ul>
   <li>rank 1: r.slice(0) x bounds, r.slice(1) y bounds
   <li>rank 2 waveform: r.slice(0) x bounds, r.slice(1) y bounds
   <li>rank 2 table:r.slice(0) x bounds  r.slice(1)  DEPEND_0 bounds.
   <li>rank 3 table:r.slice(0) x bounds  r.slice(1)  DEPEND_0 bounds.
 </ul></p>

<h3>Parameters</h3>
ds - rank 1,2, or 3 dataset.

<h3>Returns:</h3>
a bounding qube of the independent dimensions
<br><br>
<a href="https://github.com/autoplot/dev/search?q=dependBounds&unscoped_q=dependBounds">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#dependBounds">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2678">[view source]</a>
<br>
<br>
<hr>
<a name="dependBoundsSimple"></a>
<h2>dependBoundsSimple</h2>
dependBoundsSimple( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>return a bounding qube of the independent dimensions containing
 the dataset.  If r is the result of the function, then for<ul>
   <li>rank 1: r.slice(0) x bounds, r.slice(1) y bounds
   <li>rank 2 waveform: r.slice(0) x bounds, r.slice(1) y bounds
   <li>rank 2 table:r.slice(0) x bounds  r.slice(1)  DEPEND_0 bounds.
   <li>rank 3 table:r.slice(0) x bounds  r.slice(1)  DEPEND_0 bounds.
 </ul>
 This does not take DELTA_PLUS and DELTA_MINUS into account.
 When all the data is fill, ds[0,0] will be positive infinity.</p>

<h3>Parameters</h3>
ds - a rank 1,2, or 3 dataset.

<h3>Returns:</h3>
a bounding qube of the independent dimensions
<br><br>
<a href="https://github.com/autoplot/dev/search?q=dependBoundsSimple&unscoped_q=dependBoundsSimple">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#dependBoundsSimple">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2624">[view source]</a>
<br>
<br>
<hr>
<a name="flattenBundleDescriptor"></a>
<h2>flattenBundleDescriptor</h2>
flattenBundleDescriptor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundle1 ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>returns a bundle descriptor roughly equivalent to the BundleDescriptor
 passed in, but will describe each dataset as if it were rank 1.  This
 is useful for when the client can't work with mixed rank bundles anyway
 (like display data).</p>

<h3>Parameters</h3>
bundle1 - a QDataSet

<h3>Returns:</h3>
a QDataSet

<br><br>
<a href="https://github.com/autoplot/dev/search?q=flattenBundleDescriptor&unscoped_q=flattenBundleDescriptor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#flattenBundleDescriptor">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1308">[view source]</a>
<br>
<br>
<hr>
<a name="flattenRank2"></a>
<h2>flattenRank2</h2>
flattenRank2( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>flatten a rank 2 dataset.  The result is a n,3 dataset
 of [x,y,f].
 History:<ul>
   <li> modified for use in PW group.
   <li> missing DEPEND_1 resulted in NullPointerException, so just use 0,1,2,..,n instead and always have rank 2 result.
 </ul></p>

<h3>Parameters</h3>
ds - rank 2 table dataset

<h3>Returns:</h3>
rank 2 dataset that is that is array of (x,y,f).
<br><br>
<a href="https://github.com/autoplot/dev/search?q=flattenRank2&unscoped_q=flattenRank2">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#flattenRank2">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l229">[view source]</a>
<br>
<br>
<hr>
<a name="flattenRank3"></a>
<h2>flattenRank3</h2>
flattenRank3( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>flatten a rank 3 dataset.  The result is a n,4 dataset
 of [x,y,z,f], or if there are no tags just rank 1 f.
 For a rank 3 join (array of tables), the result will
 be ds[n,3].</p>

<h3>Parameters</h3>
ds - rank 3 table dataset

<h3>Returns:</h3>
rank 2 dataset that is array of (x,y,z,f) or rank 1 f.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=flattenRank3&unscoped_q=flattenRank3">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#flattenRank3">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l287">[view source]</a>
<br>
<br>
<hr>
<a name="flattenWaveform"></a>
<h2>flattenWaveform</h2>
flattenWaveform( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>flatten a rank 2 dataset where the y depend variable is just an offset from the xtag.  This is
 a nice example of the advantage of using a class to represent the data: this requires no additional
 storage to handle the huge waveform.  Note the new DEPEND_0 may have different units from ds.property(DEPEND_0).</p>

<h3>Parameters</h3>
ds - rank 2 waveform with tags for DEPEND_0 and offsets for DEPEND_1

<h3>Returns:</h3>
rank 1 waveform
<br><br>
<a href="https://github.com/autoplot/dev/search?q=flattenWaveform&unscoped_q=flattenWaveform">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#flattenWaveform">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l371">[view source]</a>
<br>
<br>
<hr>
<a name="getBackgroundLevel"></a>
<h2>getBackgroundLevel</h2>
getBackgroundLevel( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, double level ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>Get the background level by sorting the data.  The result is rank one less than the input rank.</p>

<h3>Parameters</h3>
ds - rank 1, 2, or rank 3 join.
<br>
level - the level between 0 and 100.

<h3>Returns:</h3>
a QDataSet

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getBackgroundLevel&unscoped_q=getBackgroundLevel">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#getBackgroundLevel">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2034">[view source]</a>
<br>
<br>
<hr>
<a name="getComponentType"></a>
<h2>getComponentType</h2>
getComponentType( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html'>java.lang.Class</a>

<p>return the class type that can accurately store data in this 
 dataset.  This was motivated by DDataSets and FDataSets, but also
 IndexGenDataSets.</p>

<h3>Parameters</h3>
ds - the dataset.

<h3>Returns:</h3>
the class that can store this type.  double.class is returned when the class cannot be identified.
<h3>See Also:</h3>
<a href='null'>ArrayDataSet#create(java.lang.Class, int[])</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getComponentType&unscoped_q=getComponentType">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#getComponentType">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l640">[view source]</a>
<br>
<br>
<hr>
<a name="getNthPercentileSort"></a>
<h2>getNthPercentileSort</h2>
getNthPercentileSort( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, double n ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>returns the value from within a distribution that is the nth percentile division.  This
 returns a fill dataset (Units.dimensionless.getFillDouble()) when the data is all fill.</p>

<h3>Parameters</h3>
ds - the dataset
<br>
n - percent between 0 and 100.

<h3>Returns:</h3>
a QDataSet

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getNthPercentileSort&unscoped_q=getNthPercentileSort">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#getNthPercentileSort">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2007">[view source]</a>
<br>
<br>
<hr>
<a name="grid"></a>
<h2>grid</h2>
grid( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>takes rank 2 link (x,y,z) and makes a table from it z(x,y)</p>

<h3>Parameters</h3>
ds - rank 2 link (x,y,z)

<h3>Returns:</h3>
a table from it z(x,y)
<br><br>
<a href="https://github.com/autoplot/dev/search?q=grid&unscoped_q=grid">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#grid">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l405">[view source]</a>
<br>
<br>
<hr>
<a name="histogram"></a>
<h2>histogram</h2>
histogram( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, double min, double max, double binsize ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>returns a rank 1 dataset that is a histogram of the data.  Note there
 will also be in the properties:
   count, the total number of valid values.
   nonZeroMin, the smallest non-zero, positive number</p>

<h3>Parameters</h3>
ds - rank N dataset
<br>
min - the min of the first bin.  If min=-1 and max=-1, then automatically set the min and max.
<br>
max - the max of the last bin.
<br>
binsize - the size of each bin.

<h3>Returns:</h3>
a rank 1 dataset with each bin's count.  DEPEND_0 indicates the bin locations.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=histogram&unscoped_q=histogram">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#histogram">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l934">[view source]</a>
<br>
<br>
<hr>
<a name="indexOfBundledDataSet"></a>
<h2>indexOfBundledDataSet</h2>
indexOfBundledDataSet( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundleDs, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name ) &rarr; int

<p>return the index of the named bundled dataset.  This cleans up
 the name so that is contains just a Java-style identifier.  Also, ch_1 is
 always implicitly index 1.  
 Last, if safe names created from labels match that this is used. For example,
<blockquote><pre>
bds=ripplesVectorTimeSeries(100)
2==indexOfBundledDataSet( bds, "Z" ) 
</pre></blockquote>
 demonstrates its use.
 
 Last, extraneous spaces and underscores are removed to see if this will result in a match.</p>

<h3>Parameters</h3>
bundleDs - a bundle dataset with the property BUNDLE_1 or DEPEND_1 having EnumerationUnits, (or BUNDLE_0 for a rank 1 dataset).
<br>
name - the named dataset.

<h3>Returns:</h3>
the index or -1 if the name is not found.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=indexOfBundledDataSet&unscoped_q=indexOfBundledDataSet">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#indexOfBundledDataSet">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1461">[view source]</a>
<br>
<br>
<hr>
<a name="isProcessAsync"></a>
<h2>isProcessAsync</h2>
isProcessAsync( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c ) &rarr; boolean

<p>return true if the process described in c is probably a slow
 process that should be done asynchronously.  For example, do
 a long fft on a different thread and use a progress monitor.  Processes
 that take a trivial, constant amount of time should return false, and
 may be completed on the event thread,etc.</p>

<h3>Parameters</h3>
c - process string, as in sprocess.

<h3>Returns:</h3>
true if the process described in c is probably a slow process
<br><br>
<a href="https://github.com/autoplot/dev/search?q=isProcessAsync&unscoped_q=isProcessAsync">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#isProcessAsync">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2285">[view source]</a>
<br>
<br>
<hr>
<a name="leafTrim"></a>
<h2>leafTrim</h2>
leafTrim( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int start, int end ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>pull out a subset of the dataset by reducing the number of columns in the
 last dimension.  This does not reduce rank.  This assumes the dataset has no
 row with length&gt;end.
 This is extended to support rank 4 datasets.
 TODO: This probably doesn't handle bundles property.
 TODO: slice and trim should probably be implemented here for efficiently.</p>

<h3>Parameters</h3>
ds - rank 1 or more dataset
<br>
start - first index to include.
<br>
end - last index, exclusive

<h3>Returns:</h3>
dataset of the same rank.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=leafTrim&unscoped_q=leafTrim">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#leafTrim">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l464">[view source]</a>
<br>
<br>
<hr>
<a name="makeProcessStringCanonical"></a>
<h2>makeProcessStringCanonical</h2>
makeProcessStringCanonical( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> s ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>replace any component reference C, to explicit "|unbundle(C)"</p>

<h3>Parameters</h3>
s - the process string, like "X|fftPower(512,2)"

<h3>Returns:</h3>
canonical version, like "|unbundle(X)|fftPower(512,2)"
<br><br>
<a href="https://github.com/autoplot/dev/search?q=makeProcessStringCanonical&unscoped_q=makeProcessStringCanonical">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#makeProcessStringCanonical">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2467">[view source]</a>
<br>
<br>
<hr>
<a name="makePropertiesMutable"></a>
<h2>makePropertiesMutable</h2>
makePropertiesMutable( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> dataset ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>return a dataset that has mutable properties.  If the dataset parameter already has, then the 
 dataset is returned.  If the dataset is a MutablePropertyDataSet but the immutable flag is
 set, then the dataset is wrapped to make the properties mutable.</p>

<h3>Parameters</h3>
dataset - dataset

<h3>Returns:</h3>
a MutablePropertyDataSet that is has a wrapper around the dataset, or the dataset.
<h3>See Also:</h3>
<a href='null'>DataSetWrapper</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=makePropertiesMutable&unscoped_q=makePropertiesMutable">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#makePropertiesMutable">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l57">[view source]</a>
<br>
<br>
<hr>
<a name="makeWritable"></a>
<h2>makeWritable</h2>
makeWritable( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> dataset ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/WritableDataSet.html'>org.das2.qds.WritableDataSet</a>

<p>return a dataset that is writable.  If the dataset parameter of this idempotent
 function is already writable, then the 
 dataset is returned.  If the dataset is a WritableDataSet but the immutable flag is
 set, then the a copy is returned.</p>

<h3>Parameters</h3>
dataset - a QDataSet

<h3>Returns:</h3>
a WritableDataSet that is either a copy of the read-only dataset provided, or the parameter writable dataset provided.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=makeWritable&unscoped_q=makeWritable">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#makeWritable">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l78">[view source]</a>
<br>
<br>
<hr>
<a name="moment"></a>
<h2>moment</h2>
moment( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/RankZeroDataSet.html'>org.das2.qds.RankZeroDataSet</a>

<p>performs the moment (mean,variance,etc) on the dataset.</p>

<h3>Parameters</h3>
ds - rank N QDataSet.

<h3>Returns:</h3>
rank 0 dataset of the mean.  Properties contain other stats:
   stddev, RankZeroDataSet
   validCount, Integer, the number valid measurements
   invalidCount, Integer, the number of invalid measurements
<br><br>
<a href="https://github.com/autoplot/dev/search?q=moment&unscoped_q=moment">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#moment">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l991">[view source]</a>
<br>
<br>
<hr>
<a name="processDataSet"></a>
<h2>processDataSet</h2>
processDataSet( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> fillDs, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> mon ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>apply process to the data.  This is like sprocess, except that the component can be extracted as the first step.
 In general these can be done on the same thread (like
 slice1), but some are slow (like fftPower).  This is a copy of PlotElementController.processDataSet.</p>

<h3>Parameters</h3>
c - the process string, like "bgsmx|slice0(9)|histogram()"
<br>
fillDs - the input dataset.
<br>
mon - a monitor for the processing

<h3>Returns:</h3>
dataset resulting form filters.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=processDataSet&unscoped_q=processDataSet">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#processDataSet">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2318">[view source]</a>
<br>
<br>
<hr>
<a name="removeElement"></a>
<h2>removeElement</h2>
removeElement( int[] array, int index ) &rarr; int[]

<p>removes the index-th element from the array.</p>

<h3>Parameters</h3>
array - length N array
<br>
index - the index to remove

<h3>Returns:</h3>
array without the element, length N-1.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=removeElement&unscoped_q=removeElement">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#removeElement">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l417">[view source]</a>
<br>
<br>
<hr>
<a name="slice"></a>
<h2>slice</h2>
slice( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int dimension, int index ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>slice on the dimension.  This saves from the pain of having this branch
 all over the code.</p>

<h3>Parameters</h3>
ds - the rank N data to slice.
<br>
dimension - the dimension to slice, 0 is the first.
<br>
index - the index to slice at.

<h3>Returns:</h3>
the rank N-1 result.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=slice&unscoped_q=slice">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#slice">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l99">[view source]</a>
<br>
<br>
<hr>
<a name="slice0"></a>
<h2>slice0</h2>
slice0( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int index ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>slice on the first dimension.  Note the function ds.slice(index) was
 added later and will typically be more efficient.  This will create a new
 Slice0DataSet.  
 
 DO NOT try to optimize this by calling native trim, some native slice
 implementations call this.
 
 TODO: This actually needs a bit more study, because there are codes that
 talk about not using the native slice because it copies data and they just
 want metadata.  This probably is because Slice0DataSet doesn't check for 
 immutability, and really should be copying.  This needs to be fixed, 
 making sure the result of this call is immutable, and the native slice
 really should be more efficient, always.</p>

<h3>Parameters</h3>
ds - rank 1 or more dataset
<br>
index - the index to slice at

<h3>Returns:</h3>
rank 0 or more dataset.
<h3>See Also:</h3>
<a href='null'>QDataSet#slice(int)</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=slice0&unscoped_q=slice0">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#slice0">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l134">[view source]</a>
<br>
<br>
<hr>
<a name="slice1"></a>
<h2>slice1</h2>
slice1( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int index ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>slice dataset operator assumes a qube dataset
 by picking the index-th element of dataset's second dimension, without
 regard to tags.</p>

<h3>Parameters</h3>
ds - rank 2 or more dataset
<br>
index - the index to slice at

<h3>Returns:</h3>
rank 1 or more dataset.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=slice1&unscoped_q=slice1">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#slice1">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l146">[view source]</a>
<br>
<br>
<hr>
<a name="slice2"></a>
<h2>slice2</h2>
slice2( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int index ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>slice dataset operator assumes a qube dataset
 by picking the index-th element of dataset's second dimension, without
 regard to tags.</p>

<h3>Parameters</h3>
ds - rank 3 or more dataset
<br>
index - the index to slice at.

<h3>Returns:</h3>
rank 2 or more dataset.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=slice2&unscoped_q=slice2">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#slice2">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l158">[view source]</a>
<br>
<br>
<hr>
<a name="slice3"></a>
<h2>slice3</h2>
slice3( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int index ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>slice dataset operator assumes a qube dataset
 by picking the index-th element of dataset's second dimension, without
 regard to tags.</p>

<h3>Parameters</h3>
ds - rank 4 or more dataset.
<br>
index - index to slice at

<h3>Returns:</h3>
rank 3 or more dataset.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=slice3&unscoped_q=slice3">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#slice3">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l170">[view source]</a>
<br>
<br>
<hr>
<a name="sliceProperties"></a>
<h2>sliceProperties</h2>
sliceProperties( <a href='https://docs.oracle.com/javase/8/docs/api/java/util/Map.html'>java.util.Map</a> properties, int sliceDimension ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/util/Map.html'>java.util.Map</a>

<p>we've sliced a dataset, removing an index.  move the properties.  This was Ops.sliceProperties
 For example, after slicing the zeroth dimension (time), what was DEPEND_1 is
 becomes DEPEND_0.</p>

<h3>Parameters</h3>
properties - the properties to slice.
<br>
sliceDimension - the dimension to slice at (0,1,2...QDataSet.MAX_HIGH_RANK)

<h3>Returns:</h3>
the properties after the slice.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=sliceProperties&unscoped_q=sliceProperties">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#sliceProperties">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1238">[view source]</a>
<br>
<br>
<hr>
<a name="sliceProperties0"></a>
<h2>sliceProperties0</h2>
sliceProperties0( int index, <a href='https://docs.oracle.com/javase/8/docs/api/java/util/Map.html'>java.util.Map</a> props ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/util/Map.html'>java.util.Map</a>

<p>method to help dataset implementations implement slice.
 2010-09-23: support rank 2 DEPEND_2 and DEPEND_3
 2010-09-23: add BINS_1 and BUNDLE_1, Slice0DataSet calls this.
 2010-02-24: BUNDLE_0 handled.
 2011-03-25: add WEIGHTS_PLANE</p>

<h3>Parameters</h3>
index - the index to slice at in the zeroth index.
<br>
props - the properties to slice.

<h3>Returns:</h3>
the properties after the slice.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=sliceProperties0&unscoped_q=sliceProperties0">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#sliceProperties0">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1085">[view source]</a>
<br>
<br>
<hr>
<a name="sort"></a>
<h2>sort</h2>
sort( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>returns a list of indeces that sort the dataset.  I don't like this implementation, because
 it requires that an array of Integers (not int[]) be created.  Invalid measurements are not indexed in
 the returned dataset.
 If the sort is monotonic, then the property MONOTONIC will be Boolean.TRUE.</p>

<h3>Parameters</h3>
ds - rank 1 dataset, possibly containing fill.

<h3>Returns:</h3>
indeces that sort the data.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=sort&unscoped_q=sort">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#sort">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l476">[view source]</a>
<br>
<br>
<hr>
<a name="sprocess"></a>
<h2>sprocess</h2>
sprocess( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> c, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> fillDs, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> mon ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>sprocess implements the poorly-named filters string / process string of Autoplot, allowing
 clients to "pipe" data through a chain of operations.  For example, the filters string 
 "|slice0(9)|histogram()" will slice on the ninth index and then take a histogram of that
 result.  See http://www.papco.org/wiki/index.php/DataReductionSpecs (TODO: wiki page was lost,
 which could probably be recovered.)  There's a big problem here:
 if the command is not recognized, then it is ignored.  We should probably change this,
 but the change should be at a major version change in case it breaks things.</p>

<h3>Parameters</h3>
c - process string like "slice0(9)|histogram()"
<br>
fillDs - The dataset loaded from the data source controller, with initial filters (like fill) applied.
<br>
mon - monitor for the processing.

<h3>Returns:</h3>
the dataset after the process string is applied.
<h3>See Also:</h3>
<a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/<a href="http://autoplot/org/developer/dataset/filters">http://autoplot/org/developer/dataset/filters</a>.html'><a href="http://autoplot.org/developer.dataset.filters">http://autoplot.org/developer.dataset.filters</a></a> <br>
<a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/<a href="http://autoplot/org/developer/panel_rank_reduction">http://autoplot/org/developer/panel_rank_reduction</a>.html'><a href="http://autoplot.org/developer.panel_rank_reduction">http://autoplot.org/developer.panel_rank_reduction</a></a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=sprocess&unscoped_q=sprocess">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#sprocess">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l2375">[view source]</a>
<br>
<br>
<hr>
<a name="suggestFillForComponentType"></a>
<h2>suggestFillForComponentType</h2>
suggestFillForComponentType( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html'>java.lang.Class</a> c ) &rarr; double

<p>return a fill value that is representable by the type.</p>

<h3>Parameters</h3>
c - the class type, including double.class, float.class, etc.

<h3>Returns:</h3>
a fill value that is representable by the type.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=suggestFillForComponentType&unscoped_q=suggestFillForComponentType">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#suggestFillForComponentType">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l659">[view source]</a>
<br>
<br>
<hr>
<a name="transpose2"></a>
<h2>transpose2</h2>
transpose2( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>transpose the rank 2 qube dataset so the rows are columns and the columns are rows.</p>

<h3>Parameters</h3>
ds - rank 2 Qube DataSet.

<h3>Returns:</h3>
rank 2 Qube DataSet
<br><br>
<a href="https://github.com/autoplot/dev/search?q=transpose2&unscoped_q=transpose2">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#transpose2">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1071">[view source]</a>
<br>
<br>
<hr>
<a name="trim"></a>
<h2>trim</h2>
trim( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> ds, int offset, int len ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a>

<p>reduce the number of elements in the dataset to the dim 0 indeces specified.
 This does not change the rank of the dataset.

 DO NOT try to optimize this by calling native trim, some native trim 
 implementations call this.</p>

<h3>Parameters</h3>
ds - the dataset
<br>
offset - the offset
<br>
len - the length, (not the stop index!)

<h3>Returns:</h3>
trimmed dataset
<br><br>
<a href="https://github.com/autoplot/dev/search?q=trim&unscoped_q=trim">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#trim">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l186">[view source]</a>
<br>
<br>
trim( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> dep, int start, int stop, int stride ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/MutablePropertyDataSet.html'>org.das2.qds.MutablePropertyDataSet</a><br>
<hr>
<a name="unbundle"></a>
<h2>unbundle</h2>
unbundle( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundleDs, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>Extract the named bundled dataset.  For example, extract B_x from bundle of components.</p>

<h3>Parameters</h3>
bundleDs - a bundle of datasets
<br>
name - the name of the bundled dataset, or "ch_&lt;i&gt;" where i is the dataset number

<h3>Returns:</h3>
the named dataset
<h3>See Also:</h3>
<a href='null'>unbundle(QDataSet, int)</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=unbundle&unscoped_q=unbundle">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#unbundle">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1576">[view source]</a>
<br>
<br>
unbundle( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundleDs, int ib ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a><br>
unbundle( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundleDs, int ib, boolean highRank ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a><br>
<hr>
<a name="unbundleDefaultDataSet"></a>
<h2>unbundleDefaultDataSet</h2>
unbundleDefaultDataSet( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a> bundleDs ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/qds/QDataSet.html'>QDataSet</a>

<p>extract the dataset that is dependent on others, or the last one.  
 For example, the dataset ds[:,"x,y"] &rarr; y[:]</p>

<h3>Parameters</h3>
bundleDs - a bundle of datasets

<h3>Returns:</h3>
the default dataset
<h3>See Also:</h3>
<a href='null'>Schemes#bundleDataSet()</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=unbundleDefaultDataSet&unscoped_q=unbundleDefaultDataSet">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/qds/DataSetOps.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/qds/DataSetOps.html#unbundleDefaultDataSet">[view on old javadoc]</a>
 <a href="https://sourceforge.net/p/autoplot/code/HEAD/tree/autoplot/trunk/QDataSet/src/org/das2/qds/DataSetOps.java#l1619">[view source]</a>
<br>
<br>