We introduce an algorithm for producing simple approximate principal compon
ents directly from a variance-covariance matrix. At the heart of the algori
thm is a series of 'simplicity preserving' linear transformations. Each tra
nsformation seeks a direction within a two-dimensional subspace that has ma
ximum variance. However, the choice of directions is limited so that the di
rection can be represented by a vector of integers whenever the subspace ca
n also be represented by vectors of integers. The resulting approximate com
ponents can therefore always be represented by integers. Furthermore the el
ements of these integer vectors are often small, particularly for the first
few components. We demonstrate the performance of this algorithm on two da
ta sets and show that good approximations to the principal components that
are also clearly simple and interpretable can result.