Stata 11 help for procrustes

help procrustes dialog: procrustes also see: procrustes postestimation -------------------------------------------------------------------------------

Title

[MV] procrustes -- Procrustes transformation

Syntax

procrustes (varlist_y) (varlist_x) [if] [in] [weight] [, options ]

options description ------------------------------------------------------------------------- Model transform(orthogonal) orthogonal rotation and reflection transformation; the default transform(oblique) oblique rotation transformation transform(unrestricted) unrestricted transformation noconstant suppress the constants norho suppress the dilation factor rho (set rho=1) force allow overlap and duplicates in varlist_y and varlist_x (advanced)

Reporting nofit suppress table of fit statistics by target variable -------------------------------------------------------------------------

bootstrap, by, jackknife, and statsby are allowed; see prefix. Weights are not allowed with the bootstrap prefix. aweights are not allowed with the jackknife prefix. aweights and fweights are allowed; see weights. See [MV] procrustes postestimation for features available after estimation.

Menu

Statistics > Multivariate analysis > Procrustes transformations

Description

procrustes performs the Procrustean analysis, one of the standard methods of multidimensional scaling. For given "target" variables varlist_y and "source" variables varlist_x, the goal is to transform the source X to be as close as possible to the target Y. The permitted transformations are any combination of dilation (uniform scaling), rotation and reflection (i.e., orthogonal or oblique transformations), and translation. Closeness is measured by the residual sum of squares. procrustes deals with complete cases only.

procrustes assumes equal weights or scaling for the dimensions. It would be inappropriate, for example, to have the first variable measured in grams ranging from 5,000 to 8,000, the second variable measured in dollars ranging from 3 to 12, and the third variable measured in meters ranging from 100 to 280. In such cases, you would want to operate on standardized variables.

Options

+-------+ ----+ Model +------------------------------------------------------------

transform(transform) specifies the transformation method. The following transformation methods are allowed:

orthogonal specifies that the linear transformation matrix A should be orthogonal, A'A = AA' = I. This is the default.

oblique specifies that the linear transformation matrix A should be oblique, diag(AA') = 1.

unrestricted applies no restrictions to A, making the procrustes transformation equivalent to multivariate regression with uncorrelated errors; see [R] mvreg.

noconstant specifies that the translation component c is fixed at 0 (the 0 vector).

norho specifies that the dilation (scaling) constant rho is fixed at 1. This option is not relevant with transform(unrestricted); here rho is always fixed at 1.

force, an advanced option, allows overlap and duplicates in the target variables varlist_y and source variables varlist_x.

+-----------+ ----+ Reporting +--------------------------------------------------------

nofit suppresses the table of fit statistics per target variable. This option may be specified during estimation or upon replay.

Remarks

Formally, procrustes solves the minimization problem

Minimize | Y - (1 c' + rho X A) |

where c is a row vector representing the translation; rho is the scalar "dilation factor"; A is the rotation and reflection matrix (orthogonal, oblique, or unrestricted); and |.| denotes the L2 norm.

The number of source (X) variables should not exceed the number of target (Y) variables for the orthogonal transformation. procrustes deals with complete cases only. Efficient algorithms for the "partial Procrustes problem" in which some elements of the target variables are missing are still under development.

Examples

Setup . webuse speed_survey

Procrustes transformation . procrustes (survey_x survey_y) (speed_x speed_y)

Same as above, but omit dilation factor . procrustes (survey_x survey_y) (speed_x speed_y), norho

Saved results

procrustes saves the following in e():

Scalars e(N) number of observations e(rho) dilation factor e(P) Procrustes statistic e(ss) total sum of squares, summed over all y variables e(rss) residual sum of squares, summed over all y variables e(rmse) root mean squared error e(urmse) root mean squared error (unadjusted for # of estimated parameters} e(df_m) model degrees of freedom e(df_r) residual degrees of freedom e(ny) number of y variables (target variables)

Macros e(cmd) procrustes e(cmdline) command as typed e(ylist) y variables (target variables) e(xlist) x variables (source variables) e(transform) orthogonal, oblique, or unrestricted e(uniqueA) 1 if rotation is unique, 0 otherwise e(wtype) weight type e(wexp) weight expression e(properties) nob noV e(estat_cmd) program used to implement estat e(predict) program used to implement predict e(marginsnotok) predictions disallowed by margins

Matrices e(c) translation vector e(A) orthogonal transformation matrix e(ystats) matrix containing fit statistics

Functions e(sample) marks estimation sample

Also see

Manual: [MV] procrustes

Help: [MV] procrustes postestimation; [MV] ca, [MV] pca, [MV] rotate, [R] mvreg


© Copyright 1996–2009 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index