Dataset subsref

From Eigenvector Research Documentation Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Purpose

Subindex for DataSet objects using Structure and index notation.

Synopsis

value = x.field{vdim,vset}

Description

General overload for the subsref method. This method handles all generic indexing into the DataSet Object Fields. Below is a summary of the indexing it enables.

  • x = x(rows,columns);

reduces the DataSet object to the specified rows and columns (all fields are indexed). Multi-dimensional indexing is fully supported on n-D DataSet objects.

  • I/O: x = x{batch};

When (x) is a 'batch' type DSO, this extracts the specified batch ((batch) must be a scalar value) and converts the batch to a standard 'data' type DataSet object.

  • value = x.field;

returns the value (value) of the DataSet object field field. This syntax is used for the following fields:

name:  value is a char vector.
author:  value is a char vector.
date:  value is a 6 element vector (see CLOCK).
moddate:  value is a 6 element vector (last modified date).
type:  value is either 'data' or 'image'.
data:  value is a double,single, or [u]int8/16/32 array.
imagemode:  value is a scalar double.
imagesize:  value is a variable-length vector of double.
label:  value is the cell of all labels.
labelname:  value is the cell of all label names.
axisscale:  value is the cell of all axis scales.
axisscalename:  value is the cell of all axis scale names.
title:  value is the cell of all mode titles.
titlename:  value is the cell of all mode title names.
class:  value is the cell of all class identifiers.
classname:  value is the cell of all class identifier names.
include:  value is a cell with vectors for all included indices for all modes.
userdata:  user defined.
description:  value is a char array.
history:  cell array of char (e.g. char(x.history))
datasetversion:  DataSet object version.
  • value = x.field{vdim};

returns the value (value) for the field (field' for the specified dimension/mode vdim.

include: value is row vector of indices for mode vdim
  • value = x.field{vdim,vset};

returns the value (value) for the field (field' for the specified dimension/mode vdim and optional set vset {default: vset=1}. E.g. vset is used when multiple sets of labels are present in x. This syntax is used for the following fields:

label:  value is a char array with size(x.data,vdim) rows.
labelname:  value is a char row vector.
axisscale:  value is a row vector with size(x.data,vdim) real elements.
axisscalename:  value is a char row vector.
title:  value is a char row vector.
titlename:  value is a char row vector.
class:  value is a row vector with size(x.data,vdim) integer elements.
classname:  value is a char row vector.

Examples

plot(mydataset.axisscale{2}) %second dim axis scale
xlabel(mydataset.title{1,2}) %second title for first dim
disp(['Made by: ' mydataset.author])

All calls can be further indexed using standard Matlab notation.

 mydataset.class{2}(5)  %give only the class for the fifth column (item 5 from dim 2)

See Also

DataSet Object Fields, dataset_subsasgn, dataset_get, dataset_explode