aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2021-08-30Implement module for interfacing with rust-qtlreaper...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: move `generate_traits_file` function to new module * gn3/computations/qtlreaper.py: new module to interface with the `rust-qtlreaper` utility. * gn3/settings.py: Provide setting for the path to the `rust-qtlreaper` utility * qtlfilesexport.py: Move `random_string` function to new module. Update to use functions in new module. Provide a module with functions to be used to interface with `rust-qtlreaper`. This module essentially contains all the functions that are needed to build the files needed for, and to run the qtlreaper utility. Muriithi Frederick Muriuki
2021-08-30Document acquired knowledge on `rust-qtlreaper`...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/heatmaps/heatmaps.py: document format of the traits file To assist future developers, and development of the system, this commit documents some of the hard-won knowledge about the operation of the system to ease future development of the system. The documentation, if good, might also help with future onboarding of new developers to the system. Muriithi Frederick Muriuki
2021-08-28README: updated install instructionsPjotr Prins
2021-08-28Add explanation of using a guix profilePjotr Prins
2021-08-28Fix issue that caused R/qtl to not use the first covariate when using stratif...zsloan
2021-08-27Test out generation of traits file...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * As part of the development effort, this commit provides a proof-of-concept as a reference for generating the traits data file. It might be useful for verifying that the functions that are called are working as is expected. Muriithi Frederick Muriuki
2021-08-27Provide intermediate data in final results...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Seeing as not every requirement/feature has been migrated over at this time, this commit just provides all the intermediate data representations in the final return of the function for later use down the line. Muriithi Frederick Muriuki
2021-08-27Export trait data to file...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Provide a function to export the given strains and traits data into a traits file for use with `rust-qtlreaper`. Muriithi Frederick Muriuki
2021-08-27Rework strains and trait values retrieval...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Rework the strains and values retrieval function to more closely correspond to the working of the original code in GN1 Muriithi Frederick Muriuki
2021-08-26Added # permutations to verbose printzsloan
2021-08-26Update imported module name...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * guix.scm: (gn packages golang) ==> (gnu packages golang) csvdiff has moved to upstream guix and been removed from latest guix-bioinformatics. Muriithi Frederick Muriuki
2021-08-26Add rust-qtlreaper...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * guix.scm: new dependency (rust-qtlreaper) Muriithi Frederick Muriuki
2021-08-20Merge branch 'main' of github.com:genenetwork/genenetwork3 into heatmap_gener...Muriithi Frederick Muriuki
2021-08-20Fix typing issue(s) caught by mypy...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: Use `Sequence` type not `Iterator` type Muriithi Frederick Muriuki
2021-08-20Retrieve the strains with valid values...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: add function to get strains with values * tests/unit/computations/test_heatmap.py: new tests Add function to get the strains whose values are not `None` from the `trait_data` object passed in. This migrates https://github.com/genenetwork/genenetwork1/blob/master/web/webqtl/heatmap/Heatmap.py#L215-221 into a separate function that can handle that and be tested independently of any other code. Muriithi Frederick Muriuki
2021-08-20Add tests for ordering and implement function...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: implement new ordering function * tests/unit/computations/test_heatmap.py: add new tests Implement the ordering function to migrate the setup of the `neworder` variable from GN1 to GN3. This migration is incomplete, since there is dependence on the return from the `web.webqtl.heatmap.Heatmap.draw` function in form of the `d_1` variable in some of the paths. The thing is, this `d_1` variable, and the `xoffset` variable seem to be used for laying out things on the drawn heatmap, and might actually end up not being needed for the new system using plotly, which has other ways of laying out things on the drawing. For now though, this commit "shims" the presence of these values until when the use of these variables is confirmed as present or absent in the new GN3 system. Muriithi Frederick Muriuki
2021-08-20Minor correlation fixes (#36)...* fix key error for (*tissue_cor) tissue correlation * update tests for tissue correlation * rename speed_compute to fast_compute * pep8 formattingAlexander Kabui
2021-08-18Test the clustering...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: Fix clustering bugs * tests/unit/computations/test_heatmap.py: Add new tests. Fix linting issues. Test and fix the clustering function. Muriithi Frederick Muriuki
2021-08-18Fix obvious linting errors...* Fix linting errors that do not change the function of the code. Muriithi Frederick Muriuki
2021-08-18Make child sequence a list...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Since the `slink` function assigns values to the `listcopy` variable and its children, this commit ensures that the sequence is a list to allow for the assignment. If the child-sequence is a tuple, that would lead to an exception. Muriithi Frederick Muriuki
2021-08-18Provide top-level `riset` key-value pair...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Provide the expected, top-level `riset` key-value pair and eliminate the redundant key-value pair. Muriithi Frederick Muriuki
2021-08-18Add tests and fix errors caught with tests...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: fix errors * tests/unit/computations/test_heatmap.py: new tests Add new tests with the expected source data format, and expected results. Fix all errors that were caught by running the tests Muriithi Frederick Muriuki
2021-08-18Fix errors: add in missing parenthesis...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Call the `cursor.fetchone()` function to get results. Without the parenthesis, the code was trying to use the function itself as the results, which was a bug, and would lead to failure. Muriithi Frederick Muriuki
2021-08-18Initialise heatmap generation module...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/heatmaps/heatmaps.py: Initialise the module with some code to be used to test out plotly features on the command-line. * guix.scm: Add `python-plotly` and `python-pandas` as dependencies. Muriithi Frederick Muriuki
2021-08-17Test the clustering...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: Fix clustering bugs * tests/unit/computations/test_heatmap.py: Add new tests. Fix linting issues. Test and fix the clustering function. Muriithi Frederick Muriuki
2021-08-17Fix obvious linting errors...* Fix linting errors that do not change the function of the code. Muriithi Frederick Muriuki
2021-08-17Make child sequence a list...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Since the `slink` function assigns values to the `listcopy` variable and its children, this commit ensures that the sequence is a list to allow for the assignment. If the child-sequence is a tuple, that would lead to an exception. Muriithi Frederick Muriuki
2021-08-17Provide top-level `riset` key-value pair...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Provide the expected, top-level `riset` key-value pair and eliminate the redundant key-value pair. Muriithi Frederick Muriuki
2021-08-17Add tests and fix errors caught with tests...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/computations/heatmap.py: fix errors * tests/unit/computations/test_heatmap.py: new tests Add new tests with the expected source data format, and expected results. Fix all errors that were caught by running the tests Muriithi Frederick Muriuki
2021-08-17Fix errors: add in missing parenthesis...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Call the `cursor.fetchone()` function to get results. Without the parenthesis, the code was trying to use the function itself as the results, which was a bug, and would lead to failure. Muriithi Frederick Muriuki
2021-08-16Merge branch 'main' into heatmap_generationMuriithi Frederick Muriuki
2021-08-16Merge pull request #32 from genenetwork/heatmap_decompose_db_retrieval...Heatmap decompose db retrievalBonfaceKilz
2021-08-12Initialise heatmap generation module...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/heatmaps/heatmaps.py: Initialise the module with some code to be used to test out plotly features on the command-line. * guix.scm: Add `python-plotly` and `python-pandas` as dependencies. Muriithi Frederick Muriuki
2021-08-12Fix linting errors...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Fix some errors caught by the linter. Muriithi Frederick Muriuki
2021-08-12Import missing definitions...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Import some missing definitions. Muriithi Frederick Muriuki
2021-08-11use normal function for correlation (#34)...* use normal function for correlation + rename functions * update test for sample correlation * use normal function for tissue correlation + rename functionsAlexander Kabui
2021-08-09Build up the heatmap data...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Add code to compute and organise the data that will be used to draw the final heatmap. This varies significantly in how it works from the original, but it still tries to retain the general flow of data. Muriithi Frederick Muriuki
2021-08-09Set up the trait dataset type correctly...* gn3/db/traits.py: setup `trait_dataset_type` * tests/unit/db/test_traits.py: fix tests The type ('Temp', 'Geno', 'Publish', and 'ProbeSet') relate to a trait's dataset, and not the trait itself. This commit updates the code to take this into consideration. The dataset type is also set up from a trait's full name, therefore this commit removes the `trait_type` argument from the `retrieve_trait_info` function. Muriithi Frederick Muriuki
2021-08-09Retrieve the trait data...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Add functions to retrieve the `value`, `variance`, and `ndata` values for any given trait. Muriithi Frederick Muriuki
2021-08-09Add missing arguments. Fix typo....Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Fix minor bugs in the code. Muriithi Frederick Muriuki
2021-08-09Fix linting errors...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Add module, class and function docstrings * Deactivate some irrelevant pylint errors * Fix indentations and line-lengths Muriithi Frederick Muriuki
2021-08-08Update tests...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Fix tests to take current changes into consideration. Muriithi Frederick Muriuki
2021-08-08Only load extra data if the traits have basic info...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Only load the extra trait data if the basic trait information is found. Muriithi Frederick Muriuki
2021-08-08Merge branch 'main' of github.com:genenetwork/genenetwork3 into heatmap_decom...Muriithi Frederick Muriuki
2021-08-07Add gunicorn support for productionPjotr Prins
2021-08-07Update info on running guix containerPjotr Prins
2021-08-05db: traits: Return unique values when fetching sample dataBonfaceKilz
2021-08-05Merge branch 'main' of github.com:genenetwork/genenetwork3 into heatmap_decom...Muriithi Frederick Muriuki
2021-08-05Reorganise the database code...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Reorganise the code to separate the datasets from the traits, and to more closely conform to the same flow as that in GN1 Muriithi Frederick Muriuki
2021-08-05Build up trait_name items from full name...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * The full name of the traits from search contains multiple parts to it, and as such, we use it to retrieve the appropriate data and set it up in the final trait_info dictionary that is produced. Muriithi Frederick Muriuki