I also suspect there may be a small bug in RandomPCA::project with respect to the selected divisor. When projecting new samples onto previously calculated loadings, if running in div=DIVISOR_N1 mode, it appears that the divisor used refers to the number of samples in the new set (being projected), as opposed to using the number of samples used to produce the original loading.
I also suspect there may be a small bug in RandomPCA::project with respect to the selected divisor. When projecting new samples onto previously calculated loadings, if running in div=DIVISOR_N1 mode, it appears that the divisor used refers to the number of samples in the new set (being projected), as opposed to using the number of samples used to produce the original loading.