{"id":21500784,"url":"https://github.com/jdromano2/gexpro","last_synced_at":"2025-03-17T13:18:57.725Z","repository":{"id":152548070,"uuid":"113492627","full_name":"JDRomano2/gexpro","owner":"JDRomano2","description":"A library and toolkit for common representation and analysis of gene expression profile data","archived":false,"fork":false,"pushed_at":"2018-03-29T19:51:23.000Z","size":11729,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-23T22:47:04.219Z","etag":null,"topics":["computational-biology","deep-learning","gene-expression-profiles","gene-expression-signatures","library"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JDRomano2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-12-07T19:55:51.000Z","updated_at":"2018-03-29T19:51:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"78f1c964-e2f4-4a3d-8ed0-1d8bf6734c29","html_url":"https://github.com/JDRomano2/gexpro","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JDRomano2%2Fgexpro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JDRomano2%2Fgexpro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JDRomano2%2Fgexpro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JDRomano2%2Fgexpro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JDRomano2","download_url":"https://codeload.github.com/JDRomano2/gexpro/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244039231,"owners_count":20387835,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["computational-biology","deep-learning","gene-expression-profiles","gene-expression-signatures","library"],"created_at":"2024-11-23T17:44:17.846Z","updated_at":"2025-03-17T13:18:57.704Z","avatar_url":"https://github.com/JDRomano2.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `GEXPRO`\n\n[![Build Status](https://travis-ci.org/JDRomano2/gexpro.svg?branch=master)](https://travis-ci.org/JDRomano2/gexpro)\n[![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n\n### An open-source utility for standardizing and serializing gene expression profiles from diverse sources\n\nWritten by Joseph D. Romano\n\nCopyright (c) 2018 by the Tatonetti Lab\n\n## Motivation\n\nDifferential expression analysis looks at cells in two (or more) states---usually one being a 'normal' or wild-type state, and the other being affected by a disease, drug, or other perturbation---and captures snapshots of which genes are currently being expressed in those cells, and to what levels they are being expressed. There are many public datasets of differential expression published on public data repositories, available for anyone to use.\n\n`GEXPRO` is a software package designed to make working with differential expression data easier. This software is currently in a 'pre-alpha' stage of development, but new features will be added rapidly. Some of the planned features for `GEXPRO` include the following:\n\n- Ability to parse and serialize gene expression profile data from a variety of formats and data repositories\n- Core library written in C++ for speed and portability, with API interfaces in higher-level scripting languages (including Python and R)\n- Plugins for running a variety of analyses on loaded data, with the ability for users to add new plugins easily\n- Size-efficient serialized representation for large collections of expression profiles\n- Visualization utilities for expression profiles\n\n## Installation\n\n```\ngit clone https://github.com/JDRomano2/gexpro\ncd gexpro\nmkdir build \u0026\u0026 cd build\ncmake ..\nmake\n```\n\n### Prerequisites\n\n`GEXPRO`'s prerequisites are available for most modern UNIX distributions. Unfortunately, we do not yet support Windows.\n\n- CMake (v3.9.2 or greater)\n- Boost libraries for C++\n- Armadillo linear algebra library for C++\n- zlib\n- libcurl\n\n## Development\n\nThis list isn't necessarily complete! It mainly serves as a place to organize top-priority features to be added to `GEXPRO`.\n\n- Core functionality\n  - Data parsers\n    - [ ] GEO data\n      - [x] Download and parse Series data given accessions\n      - [ ] Download and parse curated Datasets\n      - [ ] Download Platform data files to retrieve all records of a given platform at once\n      - [ ] Add support for processing supplemental data files\n    - [ ] Connectivity Map data\n    - [ ] Expression Atlas\n  - Data serializers\n    - [x] Write data to CSV\n    - [ ] Write data to Protobuf\n    - [ ] Write data to HDF5\n    - [ ] Write data to Python pickle\n  - Data normalization\n    - [x] Batch normalization/standardization (e.g., normalize by Series/Dataset)\n    - [ ] Global normalization/standardization \n    - [ ] Normalize by ranks\n  - Metadata support\n    - [ ] Recognize case/control status of individual samples (this will be a challenge)\n- Tools\n  - [ ] `mkgexpro`---Command-line utility to generate `GEXPRO` objects\n  - [ ] `gpsh`---REPL-based application for interactive manipulation of `GEXPRO` objects\n  - [ ] `gpsh`---Summarize `GEXPRO` objects\n- Plugins\n  - Deep learning\n    - [x] Simple autoencoder model\n    - [ ] Denoising autoencoder model\n    - [ ] Stacked denoising autoencoder model\n    - [ ] Variational autoencoder model\n  - [ ] Notebooks for replicating well-known studies\n- API\n  - [ ] Python bindings\n  - [ ] R bindings\n  - [ ] Build GitHub wiki with API documentation\n- Miscellaneous\n  - [ ] Automated documentation generation with Doxygen\n\n## Tests\n\nStay tuned...\n\n## Contribute\n\nWe encourage contributions from the public. Since `GEXPRO` is still very preliminary, we recommend waiting until the core functionality is a bit more stable, which will hopefully be quite soon!\n\nTo contribute, please submit a Pull Request.\n\n## License\n\nThis software is released under the GNU General Public License v3, which can be found in `LICENSE.txt` in the root directory of this repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjdromano2%2Fgexpro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjdromano2%2Fgexpro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjdromano2%2Fgexpro/lists"}