Source code for drcme.bin.run_combined_tsne

"""
Script to generate t-SNE coordinates using two electrophysiology sPCA files.

The two files should be calculated using the same loadings. This is just a convenience
script to merge the two data sets, run t-SNE, and save the coordinates.

.. autoclass:: ComboTsneParameters

"""

import pandas as pd
import argschema as ags
import drcme.tsne as tsne


[docs]class ComboTsneParameters(ags.ArgSchema): """Parameter schema for combined t-SNE calculation""" spca_file_1 = ags.fields.InputFile( description="Path to first sPCA values file") spca_file_2 = ags.fields.InputFile( description="Path to second sPCA values file") output_file = ags.fields.OutputFile( description="Path to output file for t-SNE coordinates") perplexity = ags.fields.Float(default=25., description="Perplexity parameter for t-SNE") n_iter = ags.fields.Integer(default=20000, description="Number of iterations for t-SNE")
def main(spca_file_1, spca_file_2, output_file, n_components, perplexity, n_iter, **kwargs): """ Main runner function for script. See :class:`ComboTsneParameters` for argument descriptions. """ df_1 = pd.read_csv(spca_file_1, index_col=0) df_2 = pd.read_csv(spca_file_2, index_col=0) combo_df = tsne.combined_tsne(df_1, df_2, perplexity, n_iter) combo_df.to_csv(output_file) if __name__ == "__main__": module = ags.ArgSchemaParser(schema_type=ComboTsneParameters) main(**module.args)