ActiveX Software for Visual Basic 6/.NET, C++ 6/.NET, Delphi, Borland C++ Builder: Matrix Maths, Time Series
 Home   |   Products   |   Testimonials   |   Prices   |   Support   |   Contact   |   Publications   |   About   |   Buy Now
Quick Links   Home   Purchase   Support
Products   Product Home   ActiveX/COM Components   .NET Components   Version History
Support   Support Home   Installation Help
About Us   Company Info   Clients   Testimonials   Publications   Contact Us

   Principal Component Analysis Software

    PCA/X 5.0
Principal Component Analysis (PCA) ActiveX Control and COM Object

Product Features  Download  Product FAQ  Screen Shots!   Prices Buy Now

Analyze multivariate data using the PCA/X Principal Component Analysis ActiveX Control in your Windows programs: Visual Basic, Visual C++, ASP, VBA, Excel, Borland C++ Builder, Delphi. With full source code samples you can download and use immediately, PCA/X will let you quickly and easily implement PCA in your programs. Download PCA/X now and you can be developing programs immediately.

PCA/X ActiveX Control implements a principal component analysis algorithm. PCA/X is both an ActiveX Control and a COM object, so it can be used in a wide range of applications that support these standards. This includes Visual Basic, Visual C++, Excel, Delphi and Borland C++ Builder.

The control is written as a lightweight ATL C/C++ object, and does not require bulky MFC DLLs. Because the control is written in ATL it is efficient and small in size. The numerical processing is written in C for speed, and integrated into the lightweight ATL/C++ framework.

PCA/X ActiveX Control is written as a lightweight ATL C/C++ object for speed and is small in size. It weighs in at under 170kB and does not require bulky MFC DLLs.


Screen shot of an application built in Visual Basic using PCA/X.

Background of PCA

Principal component analysis (PCA) is a statistical data analysis technique used to reduce the dimensionality of multivariate data. Understanding multivariate data can be difficult due to the number of dimensions. When more than three dimensions are being analyzed, it is difficult to visualize the data.
PCA is a well known method for reducing the dimensionality by extracting components which are uncorrelated with each other. Moreover, the first component explains as much of the variance as possible, while remaining uncorrelated with subsequent principal components. Hence it is the first principal component. Further principal components in turn, provide as much of the remaining variance as possible.

PCA is useful in a wide range of data analysis tasks where we seek to understand and analyse sequential or time-based data in terms of their underlying composition, where the composition signals are as independent of each other as possible.

PCA/X employs singular value decomposition to separate linearly mixed input signals in a block-based manner without user intervention.

PCA/X ActiveX and COM Control

PCA/X is an ActiveX DLL that can be used in wide range of Windows applications. It requires no user interface and can be accessed by any ActiveX compatible development environment, including VB, ASP, VBA, VC++, Delphi, Borland C++ Builder and various programming environments.

PCA/X supports threaded blocking and non-blocking modes. This means for lengthy computations, you can use the control in a program, pass it some data for processing andthe program can then run other tasks and respond to user input while the computations are occurring. When processing is complete, an event is fired and the program continues from the data processing step. This blocking/non-blocking mode is under program control. Error codes are returned from the event indicating the success or otherwise of the data processing. The computations can also be interrupted under program control by the user, for example, it is straight forward to implement a "Stop" button to direct the computations to be stopped.

Matrix data used with PCA/X and returned from the control can have different index starting values. This means that you can choose to index your data from 0 or 1. PCA/X will pass the data back in an array indexed from the value you specify in a property of the control. All data used and returned with PCA/X is in double format. This means it is suitable for use with Visual Basic and Visual C++. Moreover, the data is in a format compatible with further numeric processing. Hence, if you wish to use the data with other controls that can use double format arrays, this presents no problems.