Methods are developed for factoring an arbitrary rectangular matrix S of rank r into the form FP, where F has r columns and P has r rows. For the statistical problem of factor analysis, S may be the score matrix of a population of individuals on a battery of tests. Then F is a matrix of factor loadings, P is a matrix of factor scores, and r is the number of factor variates. (As in current procedures, there remains a subsequent problem of rotation of axes and interpretation of factors, which is not discussed here.) Methods are also developed for factoring an arbitrary Gramian matrix G of rank r into the form FF′, where F has r columns and F′ denotes F transposed. For the statistical problem of factor analysis, G may be the matrix of intercorrelations, R, of a battery of tests, with unity, communalities, or other parameters in the principal diagonal. R is proportional to SS′, and it is shown that S can be factored by factoring R. This may usually be the most economical procedure in practice; it should not be overlooked, however, that S can be factored directly. The general methods build up an F (and P) in as many stages as desired; as many factors as may be deemed computationally practical can be extracted at a time. Perhaps it will usually be found convenient to extract not more than three factors at a time. Current procedures, like the centroid and principal axes, are special cases of a general method presented here for extracting one factor at a time.