added PCA functions