usage: prog [options] <input stack> <output basis> [reprojections]
This too provides a variety of dimensionality reduction methods. This new version
uses scikit.learn, which provides a greater variety of algorithms, but must load 
all data into memory. If working with a large file, you may want to consider using
--step to operate on a limited subset of the data.

If specified, [reprojections] will contain projections of the full input stack
(ignoring --step) into the basis subspace represented as a single image. This 
obviates the need for e2basis.py, and permits use of nonlinear decompositions.

Performs multivariate statistical analysis on a stack of images. Writes
a set of Eigenimages which can be uses as a basis set for reducing
the dimensionality of a data set (noise reduction). Typically this
basis set is then used to reproject the data (e2basis.py) and
classify the data based on the projected vectors. If the
output file supports arbitrary metadata (like HDF), Eigenvalues
are stored in the 'eigval' parameter in each image.

Note: The mean value is subtracted from each image prior to MSA
calculation. The mean image is stored as the first image in the output
file, though it is not part of the orthonormal basis when
handled this way.

Option Type Description
--version None show program's version number and exit
--mode str Mode should be one of: pca, sparsepca, fastica, factan, lda, nmf
--nomean None Suppress writing the average image as the first output image
--nomeansub None Suppress subtracting the mean from each input image, also implies --nomean
--nbasis, -n int Number of basis images to generate.
--maskfile, -M str File containing a mask defining the pixels to include in the Eigenimages
--projin str When generating subspace projections, use this file instead of the input used for the MSA
--normproj None When generating subspace projections, normalize each projection vector to unit length
--mask int Mask radius, negative values imply ny/2+1+mask, --mask=0 disables, --maskfile overrides
--simmx str Will use transformations from simmx on each particle prior to analysis
--normalize None Perform a careful normalization of input images before MSA. Otherwise normalization is not modified until after mean subtraction.
--step str Specify <init>,<step>[,last]. Processes only a subset of the input data. For example, 0,2 would process only the even numbered particles
--ppid int Set the PID of the parent process, used for cross platform PPID
--verbose, -v int verbose level [0-9], higher number means higher level of verboseness