Example #1
0
    if verbose:
        print galaxy_ids[out]

    np.savetxt(base_dir + 'data/outliers.txt', galaxy_ids[out])

    if load_pca:
        print 'Loading PCA...'
        rpca = cPickle.load(open(base_dir + 'data/DCT_PCA.pickle', 'rb'))
        X = rpca.transform(X)
    else:
        # do the PCA
        if verbose:
            print 'Doing PCA...'
        rpca = RandomizedPCA(n_components=npca, copy=False)
        X = rpca.fit_transform(X)
        rpca.galaxy_ids = galaxy_ids[notout]
        cPickle.dump(rpca, open(base_dir + 'data/DCT_PCA.pickle', 'wb'))
        np.save(base_dir + 'data/PCA_dist_no_outliers', X)

    plt.plot(rpca.explained_variance_ratio_.cumsum())
    plt.ylabel('Cumulative Fractional Explained Variance')
    plt.xlabel('Number of Components')
    plt.savefig(plot_dir + 'explained_variance.png')
    if doshow:
        plt.show()

    # now plot after removing outliers
    fig = plot_pc_projections(X, npca=6)
    fig.savefig(plot_dir + 'PC_dist_no_outliers.png')
    if doshow:
        plt.show()