Fit a multivariate Gaussian to data and/or assess Mahalanobis distance of each datum from the mean.
More...
|
virtual const char * | GetClassName () |
|
virtual int | IsA (const char *type) |
|
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
|
int | GetNumberOfAttributeArrays () |
| Return the number of columns available for the current value of AttributeMode. More...
|
|
const char * | GetAttributeArrayName (int n) |
| Get the name of the n-th array ffor the current value of AttributeMode. More...
|
|
int | GetAttributeArrayStatus (const char *arrName) |
| Get the status of the specified array (i.e., whether or not it is a column of interest). More...
|
|
vtkInformationIntegerKey * | MULTIPLE_MODELS () |
| A key used to mark the output model data object (output port 0) when it is a multiblock of models (any of which may be multiblock dataset themselves) as opposed to a multiblock dataset containing a single model. More...
|
|
virtual int | GetAttributeMode () |
| Set/get the type of field attribute (cell, point, field) More...
|
|
virtual void | SetAttributeMode (int) |
| Set/get the type of field attribute (cell, point, field) More...
|
|
void | EnableAttributeArray (const char *arrName) |
| An alternate interface for preparing a selection of arrays in ParaView. More...
|
|
void | ClearAttributeArrays () |
| An alternate interface for preparing a selection of arrays in ParaView. More...
|
|
virtual void | SetTrainingFraction (double) |
| Set/get the amount of data to be used for training. More...
|
|
virtual double | GetTrainingFraction () |
| Set/get the amount of data to be used for training. More...
|
|
virtual void | SetTask (int) |
| Set/get whether this filter should create a model of the input or assess the input or both. More...
|
|
virtual int | GetTask () |
| Set/get whether this filter should create a model of the input or assess the input or both. More...
|
|
|
| vtkPSciVizMultiCorrelativeStats () |
|
virtual | ~vtkPSciVizMultiCorrelativeStats () |
|
virtual int | LearnAndDerive (vtkMultiBlockDataSet *model, vtkTable *inData) |
| Method subclasses must override to calculate a full model from the given input data. More...
|
|
virtual int | AssessData (vtkTable *observations, vtkDataObject *dataset, vtkMultiBlockDataSet *model) |
| Method subclasses must override to assess an input table given a model of the proper type. More...
|
|
| vtkSciVizStatistics () |
|
virtual | ~vtkSciVizStatistics () |
|
virtual int | FillInputPortInformation (int port, vtkInformation *info) |
|
virtual int | FillOutputPortInformation (int port, vtkInformation *info) |
|
virtual int | ProcessRequest (vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output) |
|
virtual int | RequestDataObject (vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output) |
|
virtual int | RequestData (vtkInformation *request, vtkInformationVector **input, vtkInformationVector *output) |
|
virtual int | RequestData (vtkCompositeDataSet *compDataOu, vtkCompositeDataSet *compModelOu, vtkCompositeDataSet *compDataIn, vtkCompositeDataSet *compModelIn, vtkDataObject *singleModel) |
|
virtual int | RequestData (vtkDataObject *observationsOut, vtkDataObject *modelOut, vtkDataObject *observationsIn, vtkDataObject *modelIn) |
|
virtual int | PrepareFullDataTable (vtkTable *table, vtkFieldData *dataAttrIn) |
|
virtual int | PrepareTrainingTable (vtkTable *trainingTable, vtkTable *fullDataTable, vtkIdType numObservations) |
|
virtual vtkIdType | GetNumberOfObservationsForTraining (vtkTable *observations) |
| Subclasses may (but need not) override this function to guarantee that some minimum number of observations are included in the training data. More...
|
|
Fit a multivariate Gaussian to data and/or assess Mahalanobis distance of each datum from the mean.
This filter either computes a statistical model of a dataset or takes such a model as its second input. Then, the model (however it is obtained) may optionally be used to assess the input dataset.
This filter computes the covariance matrix for all the arrays you select plus the mean of each array. The model is thus a multivariate Gaussian distribution with the mean vector and variances provided. Data is assessed using this model by computing the Mahalanobis distance for each input point. This distance will always be positive.
The learned model output format is rather dense and can be confusing, so it is discussed here. The first filter output is a multiblock dataset consisting of 2 tables:
-
Raw covariance data.
-
Covariance matrix and its Cholesky decomposition.
-
raw covariance table has 3 meaningful columns: 2 titled "Column1" and "Column2" whose entries generally refer to the N arrays you selected when preparing the filter and 1 column titled "Entries" that contains numeric values. The first row will always contain the number of observations in the statistical analysis. The next N rows contain the mean for each of the N arrays you selected. The remaining rows contain covariances of pairs of arrays.
The second table (covariance matrix and Cholesky decomposition) contains information derived from the raw covariance data of the first table. The first N rows of the first column contain the name of one array you selected for analysis. These rows are followed by a single entry labeled "Cholesky" for a total of N+1 rows. The second column, Mean contains the mean of each variable in the first N entries and the number of observations processed in the final (N+1) row.
The remaining columns (there are N, one for each array) contain 2 matrices in triangular format. The upper right triangle contains the covariance matrix (which is symmetric, so its lower triangle may be inferred). The lower left triangle contains the Cholesky decomposition of the covariance matrix (which is triangular, so its upper triangle is zero). Because the diagonal must be stored for both matrices, an additional row is required - hence the N+1 rows and the final entry of the column named "Column".
Definition at line 75 of file vtkPSciVizMultiCorrelativeStats.h.
virtual int vtkPSciVizMultiCorrelativeStats::AssessData |
( |
vtkTable * |
observations, |
|
|
vtkDataObject * |
dataset, |
|
|
vtkMultiBlockDataSet * |
model |
|
) |
| |
|
protectedvirtual |
Method subclasses must override to assess an input table given a model of the proper type.
The dataset parameter contains a shallow copy of input port 0 and should be modified to include the assessment.
Adding new arrays to point/cell/vertex/edge data should not pose a problem, but any alterations to the dataset itself will probably require that you create a deep copy before modification.
- Parameters
-
observations | - a table containing the field data of the dataset converted to a table |
dataset | - a shallow copy of the input dataset that should be altered to include an assessment of the output. |
model | - the statistical model with which to assess the observations. |
Implements vtkSciVizStatistics.