use fit(PCA, X, ...) instead of pca(X, ...)