aboutsummaryrefslogtreecommitdiff
path: root/gn3
AgeCommit message (Expand)Author
2021-12-13Return the primary and control traits in addition to results...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * In addition to the partial correlation results, this commit enables the return of the chosen primary trait and the selected control traits. This data is required for presentation on the results page. Frederick Muriuki Muriithi
2021-12-13Run partial correlations against chosen database...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Run the partial correlations against the database that the user selects, and not the one from which the primary trait is. This was a bug in the code. Frederick Muriuki Muriithi
2021-12-13Fix errors with query...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Use the correct format string paradigm: put f before opening quote. * Provide missing space just before 'FROM' clause Frederick Muriuki Muriithi
2021-12-10Fix parameters...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Provide parameters as a dict of items (which works for MySQL), rather than as keywork arguments (as works in PostgreSQL). Frederick Muriuki Muriithi
2021-12-10format normalize function doc stringAlexander Kabui
2021-12-10minor pr fixesAlexander Kabui
2021-12-10rename variablesAlexander Kabui
2021-12-10try and catch for non matching sample keysAlexander Kabui
2021-12-10update function docs for normalizing strain valuesAlexander Kabui
2021-12-10fix bug:unpacking error when generator returns empty listAlexander Kabui
2021-12-09Prevent error on no result. Fix indexing...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * If the dataset name is not found, don't cause an exception, instead, return the provided search name. * Use the correct inner object Frederick Muriuki Muriithi
2021-12-09Provide clearer error message...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * To help with debugging error conditions, provide the original name to help with figuring out why the error was raised Frederick Muriuki Muriithi
2021-12-08Provide group from primary trait...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * From the collections page, the group is not present, so this commit retrieves the group value from the primary trait. Frederick Muriuki Muriithi
2021-12-06Merge branch 'main' of github.com:genenetwork/genenetwork3Frederick Muriuki Muriithi
2021-12-02Implement dataset metadata API endpoint....* guix.scm: Import (gnu packages rdf). (genenetwork3)[propagated-inputs]: Add python-sparqlwrapper. * gn3/settings.py (SPARQL_ENDPOINT): New variable. * gn3/api/general.py: Import datasets from gn3.db. (dataset_metadata): New API endpoint. * gn3/db/datasets.py: Import re, Template from string, Dict and Optional from typing, JSON and SPARQLWrapper from SPARQLWrapper, SPARQL_ENDPOINT from gn3.settings. (sparql_query, dataset_metadata): New functions. Arun Isaac
2021-11-29Merge branch 'main' into partial-correlationsMuriithi Frederick Muriuki
2021-11-29Fix linting errors...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi Frederick Muriuki Muriithi
2021-11-29Provide entry-point function for the partial correlations...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Provide the entry-point function to the partial correlation feature. This is the function that ochestrates the fetching of the data, and processing it for output by the API endpoint (to be implemented). Frederick Muriuki Muriithi
2021-11-29Fix bugs in data...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Process the db_name and db_type values. * Return data correctly Frederick Muriuki Muriithi
2021-11-29Update return type...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Return the complete filename when found, or the boolean value False, when it is not found. Frederick Muriuki Muriithi
2021-11-29Return only values...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Return the values from the database, not the tuples. Frederick Muriuki Muriithi
2021-11-29Update typing notations on functions...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi Frederick Muriuki Muriithi
2021-11-29Fix query parametrisation...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Pass parameters to the query the way the MySQL driver expects. Frederick Muriuki Muriithi
2021-11-29Retrieve the species name given the group...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Migrate the `web.webqtl.dbFunction.webqtlDatabaseFunction.retrieveSpecies` in GeneNetwork1 to `gn3.db.species.species_name` in GeneNetwork3 to enable the retrieval of the species name, given the group name (formerly RISet). Frederick Muriuki Muriithi
2021-11-29db: traits: Support additions and deletions from csv fileBonfaceKilz
2021-11-29db: traits: Remove trailing ".0" in int valuesBonfaceKilz
2021-11-29db: traits: Remove "\n\n" when generating csv file...In excel, "\n\n" is replaced with ",,,," during upload. BonfaceKilz
2021-11-25db: traits: Support additions and deletions from csv fileBonfaceKilz
2021-11-24db: traits: Remove trailing ".0" in int valuesBonfaceKilz
2021-11-23db: traits: Remove "\n\n" when generating csv file...In excel, "\n\n" is replaced with ",,,," during upload. BonfaceKilz
2021-11-23Fix a myriad of linting errors...* Fix linting errors like: - Unused variables - Undeclared variable errors (mostly caused by typos, and wrong names) - Missing documentation strings for functions etc. Frederick Muriuki Muriithi
2021-11-23Migrate `getPartialCorrelationsNormal`...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Migrate the `web.webqtl.correlation.PartialCorrDBPage.getPartialCorrelationsNormal` function in GN1. * Remove function obsoleted by newer implementation of the code Frederick Muriuki Muriithi
2021-11-23Update documentation for functions...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Document functions for posterity. Frederick Muriuki Muriithi
2021-11-22Add test to query builders...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Add some tests for the query builders to ensure that the queries are built up correctly. Frederick Muriuki Muriithi
2021-11-22Migrate `web.webqtl.correlation.CorrelationPage.fetchAllDatabaseData` function...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Migrate the `web.webqtl.correlation.CorrelationPage.fetchAllDatabaseData` function from GN1 to GN3. Frederick Muriuki Muriithi
2021-11-22Make the DB connection argument the first...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * To make the code more composable down the line, make the database connection argument the first argument for functions that access the database, since they will always require the connection. Frederick Muriuki Muriithi
2021-11-20Merge pull request #56 from genenetwork/partial-correlations...Partial correlationsMuriithi Frederick Muriuki
2021-11-19Avoid rounding: compare floats approximately...Notes: https://github.com/genenetwork/genenetwork3/pull/56#issuecomment-973798918 * As mentioned in the notes, rather than rounding to an arbitrary number of decimal places, it is a much better practice to use approximate comparisons of floats for the tests. Frederick Muriuki Muriithi
2021-11-18Fix some linting errors...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Fix some obvious linting errors and remove obsolete code Frederick Muriuki Muriithi
2021-11-18Replace code migrated from R with pingouin functions...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * Replace the code that was in the process of being migrated from R in GeneNetwork1 with calls to pingouin functions that achieve the same thing. Since the functions in this case are computing correlations and partial correlations, rather than having home-rolled functions to do that, this commit makes use of the tried and tested pingouin functions. This avoids complicating our code with edge-case checks, and leverages the performance optimisations done in pingouin. Frederick Muriuki Muriithi
2021-11-16Remove sqlalchemy....* gn3/settings.py (SQLALCHEMY_TRACK_MODIFICATIONS): Delete variable. * guix.scm (genenetwork3)[propagated-inputs]: Remove python-sqlalchemy-stubs. * setup.py: Remove sqlalchemy-stubs from install_requires. Arun Isaac
2021-11-15Fix bugs in recursive partial correlations...* gn3/computations/partial_correlations.py: Remove rounding. Fix computation of remaining covariates * tests/unit/computations/partial_correlations_test_data/pcor_rec_blackbox_test.txt: reduce the number of covariates to between one (1) and three (3) * tests/unit/computations/test_partial_correlations.py: fix some minor bugs It turns out that the computation complexity increases exponentially, with the number of covariates. Therefore, to get a somewhat sensible test time, while retaining a large-ish number of tests, this commit reduces the number of covariates to between 1 and 3. Frederick Muriuki Muriithi
2021-11-15Merge branch 'main' of github.com:genenetwork/genenetwork3 into partial-corre...Frederick Muriuki Muriithi
2021-11-15Fix the columns in built data frame...Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * When the z value is a Sequence of sequences of values, each of the internal sequences should form a column of its own, and not a row, as it was originally set up to do. Frederick Muriuki Muriithi
2021-11-13Do not shadow global symbol uuid....* gn3/authentication.py (get_groups_by_user_uid): Rename local symbol uuid to group_uuid. (get_user_info_by_key): Rename local symbol uuid to user_uuid. Arun Isaac
2021-11-13Reformat condition on a single line....* gn3/authentication.py (get_user_info_by_key): Reformat so that condition is on a single line. Arun Isaac
2021-11-13Do not use dangerous default argument []....Default arguments get evaluated only once when the function is defined, and are then shared across all instances of the function. If the argument is then mutated, this can cause hard to find bugs. See https://docs.python.org/3/tutorial/controlflow.html#default-argument-values * gn3/authentication.py (create_group): Do not use [] as the default argument. Arun Isaac
2021-11-12Merge branch 'main' of github.com:genenetwork/genenetwork3 into partial-corre...Frederick Muriuki Muriithi
2021-11-11Remove redundant check on the Pearson correlation coefficient....The Pearson correlation coefficient always has a value between -1 and 1. So, this check is redundant. * gn3/heatmaps.py (cluster_traits.__compute_corr): Remove redundant check on the Pearson correlation coefficient. Arun Isaac
2021-11-11Reimplement correlations2.compute_correlation using pearsonr....correlations2.compute_correlation computes the Pearson correlation coefficient. Outsource this computation to scipy.stats.pearsonr. When the inputs are constant, the Pearson correlation coefficient does not exist and is represented by NaN. Update the tests to reflect this. * gn3/computations/correlations2.py: Remove import of sqrt from math. (compute_correlation): Reimplement using scipy.stats.pearsonr. * tests/unit/computations/test_correlation.py: Import math. (TestCorrelation.test_compute_correlation): When inputs are constant, set expected correlation coefficient to NaN. Arun Isaac