aboutsummaryrefslogtreecommitdiff
path: root/gn3
AgeCommit message (Expand)Author
2022-05-27Return all the results from CaseAttributes column as is...* gn3/db/sample_data.py: Remove "collections" import. Add "Optional" import. (get_case_attributes): Return the results of "fetchall" from the case attributes. * tests/unit/db/test_sample_data.py (test_get_case_attributes): Update failing test. BonfaceKilz
2022-05-26Add Endpoint to get menu items for use in UIFrederick Muriuki Muriithi
2022-05-24Run partial correlations with external script...Use new external script to run the partial correlations for both cases, i.e. - against an entire dataset, or - against selected traits Frederick Muriuki Muriithi
2022-05-24New script to compute partial correlations...* Add a new script to compute the partial correlations against: - a select list of traits, or - an entire dataset depending on the specified subcommand. This new script is meant to supercede the `scripts/partial_correlations.py` script. * Fix the check for errors * Reorganise the order of arguments for the `partial_correlations_with_target_traits` function: move the `method` argument before the `target_trait_names` argument so that the common arguments in the partial correlation computation functions share the same order. Frederick Muriuki Muriithi
2022-05-21Fix linting errorsFrederick Muriuki Muriithi
2022-05-21Use multiprocessing to improve performanceFrederick Muriuki Muriithi
2022-05-21Process primary, target and control traits in a single iteration...Rework the code to process the traits in a single iteration to improve performance. Frederick Muriuki Muriithi
2022-05-21Return generator object rather than tuples...Return generator objects rather than pre-computed tuples to reduce the number of iterations needed to process the data, and thus improve the performance of the system somewhat. Frederick Muriuki Muriithi
2022-05-16Run computation in one-shot asynchronous process...After reworking the worker/runner to have a one-shot mode, add a function that queues up the task and then runs the worker in the one-shot mode to process the computation in the background. Frederick Muriuki Muriithi
2022-05-06Fix linting and typing errorsFrederick Muriuki Muriithi
2022-05-06Hook up pcorrs with target traits computations...Enable the endpoint to actually compute partial correlations with selected target traits rather than against an entire dataset. Fix some issues caused by recent refactor that broke pcorrs against a dataset Frederick Muriuki Muriithi
2022-05-05Compute partial correlation with selected traits...Compute partial correlations against a selection of traits rather than against an entire dataset. Frederick Muriuki Muriithi
2022-05-05Extract common error checking. Rename function....* Extract the common error checking code into a separate function * Rename the function to make its use clearer Frederick Muriuki Muriithi
2022-05-03Refactor: Remove unnecessary loop...Remove an unnecessary looping construct to help with speeding up the partial correlations somewhat. Frederick Muriuki Muriithi
2022-04-29Replace whole header with the longest one, instead of just the...non-CaseAttribute headers (before this caused issues if someone was adding case attributes to a file that already contained some case attributes) zsloan
2022-04-29Get max string length instead when comparing headers...Apparently max(string1, string2) in Python gets the strong that is highest alphabetically, but I'm pretty sure this line was intenteded to get the header with the most items (which this commit doesn't fully address; you could still end up with a situation where some case attributes were removed while others were added, though that should be rare) zsloan
2022-04-12Delete "get_allowable_sampledata_headers"...* gn3/csvcmp.py (get_allowable_sampledata_headers): Delete it. * tests/unit/test_csvcmp.py: Remove "get_allowable_sampledata_headers" import. (test_get_allowable_csv_headers): Delete it. BonfaceKilz
2022-04-12Strip any newline, tab or carriage-return chars from sample data...* gn3/db/sample_data.py (get_trait_csv_sample_data): Strip out "\n", "\t", or "\r" from the sample data. See: <https://issues.genenetwork.org/issues/csv-error-ITP_10001-longevity-data-set.html> BonfaceKilz
2022-04-07Fix pylint errorsBonfaceKilz
2022-04-07Fix mypy errorBonfaceKilz
2022-04-07Use case attribute id inside brackets if present during insertions...* gn3/db/sample_data.py (delete_sample_data): If an id is present in the column header, use it. * tests/unit/db/test_sample_data.py (test_delete_sample_data): Update tests to capture the above. BonfaceKilz
2022-04-07Use case attribute id inside brackets if present during insertions...* gn3/db/sample_data.py (insert_sample_data): If an id is present in the column header, use it. * tests/unit/db/test_sample_data.py (test_insert_sample_data): Update tests to capture the above. BonfaceKilz
2022-04-07Use case attribute id inside brackets if present during updates...* gn3/db/sample_data.py: Import "parse_csv_column". (update_sample_data): If an id is present in the column header, use it. * tests/unit/db/test_sample_data.py (test_update_sample_data): Update tests to capture the above. BonfaceKilz
2022-04-07Add method for fetching the case_attributes...* gn3/db/sample_data.py (get_case_attributes): New function. * tests/unit/db/test_sample_data.py (test_get_case_attributes): Test case for the above. BonfaceKilz
2022-04-07Run python black on file...* gn3/db/sample_data.py: Run "python black -l 79 ..." BonfaceKilz
2022-04-07Add method for parsing a csv header from uploaded sample-data file...* gn3/csvcmp.py (parse_csv_column): New function. * tests/unit/test_csvcmp.py: Test case for the above. BonfaceKilz
2022-04-01Run python-black in file...* gn3/csvcmp.py: Run "black -l 79 ..." * tests/unit/db/test_sample_data.py: Ditto. * tests/unit/test_csvcmp.py: Ditto. BonfaceKilz
2022-03-30Revert "Run json.loads on request.get_json, since request.get_json was just r......This reverts commit b93b22386056347d8002dd2e403425beeb4657cd. The appropriate fix should have been in GN2. The original statement args = request.get_json() was correct, since `request.get_json()` should return a python object parsed from the JSON string in the request. Unfortunately, GN2 was encoding the request data two times, which led to the call returning a JSON-encoded string instead of the expected object. The issue has been fixed in GN2 and therefore, the "fix" here can be reverted. Frederick Muriuki Muriithi
2022-03-29Remove unused module...* Remove a module that is no longer in use Frederick Muriuki Muriithi
2022-03-28Run json.loads on request.get_json, since request.get_json was just returning...zsloan
2022-03-23Run python-black on file and fix other pylint issues....See: <https://ci.genenetwork.org/jobs/genenetwork3-pylint/126> * gn3/computations/rqtl.py: Run `black gn3/computations/rqtl.py`. Also, manually fix other pylint issues. BonfaceKilz
2022-03-22Fixes pylint errorszsloan
2022-03-22Fixed mypy typing errorszsloan
2022-03-22Tried to make the docstrings more consistentzsloan
2022-03-22Add typing to some functionszsloan
2022-03-22Add functions for getting proximal/distal markers for each pseudomarker posit...zsloan
2022-03-22Fix issue that causes R/qtl to always run pair-scan even if pair-scan isn't s...zsloan
2022-03-22Added genofile name to inputs for processing R/qtl pair-scan results, since i...zsloan
2022-03-22Removed quotes from beginning and end of chromosome stringzsloan
2022-03-22Fixed a cople function calls to use the updated function nameszsloan
2022-03-22Create pairscan_for_figure and pairscan_for_table functions that return the D...zsloan
2022-03-22Fix imports to import both process_rqtl_mapping and process_rqtl_pairscan in ...zsloan
2022-03-22Added pairscan boolean kwarg and process_rqtl_pairscan function for reading i...zsloan
2022-03-18Clean all csv fields before diffing...There was a subtle bug where "csvdiff" generated an error related to "different column headings" caused something akin to diffing: "a, b \n, ..." with "a, b\n, ...". * gn3/csvcmp.py (csv_diff): Clean csv texts before any diffing. * tests/unit/test_csvcmp.py (test_csv_diff_same_columns): Modify test case to capture aforementioned bug. BonfaceKilz
2022-03-18Create new function for cleaning individual fields in csv text...* gn3/csvcmp.py (clean_csv_text): New function. * tests/unit/test_csvcmp.py: Import "csv_text". (test_clean_csv_text): Test case for the above. BonfaceKilz
2022-03-15Feature/refactored pca (#79)...* compute zscore function * test case for computing zscore * function to compute pca * generate scree plot data * generate new pca trait data from zscores and eigen_vec * remove redundant functions * generate factor loading table data * generate pca temp dataset dict * variable naming and error fixes * unit test for processing factor loadings * minor fixes for generating temp pca dataset * pass datetime as argument to generate_pca temp dataset function * add unittest for caching pca datasets * cache temp datasets * ignore missing imports for sklearn * mypy fixes * pylint fixes * refactor tests for pca * remove ununsed imports * fix for generating pca traits vals * mypy and code refactoring * pep8 formatting and add docstrings * remove comments /pep8 formatting * sort eigen vectors based on eigen values * minor fix for zscores * fix for rounding variance ratios * refactor tests * rename module to pca * rename datasets to traits * fix failing tests * fix caching function * fixes return x and y coordinates for scree plot * expand exception scope * fix for deprecated numpy.matrix function * fix for failing tests * pep8 fixes * remove comments * fix merge conflict * pylint fixes * rename module name to test_pcaAlexander Kabui
2022-03-14Dummy White Space commit to fix laminarBonfaceKilz
2022-03-14Only loop through the diff's modifications if it existsBonfaceKilz
2022-03-14Given a csv text and permissible headers, extract invalid headers...* gn3/csvcmp.py (extract_invalid_csv_headers): New function. * tests/unit/test_csvcmp.py: Import "extract_invalid_csv_headers". (test_extract_invalid_csv_headers_with_some_wrong_headers): Test case for the above. BonfaceKilz
2022-03-14Get all permissible column data...* gn3/csvcmp.py: Import "Any" and "List". (get_allowable_sampledata_headers): New function. * tests/unit/test_csvcmp: Import "get_allowable_sampledata_headers". (test_get_allowable_csv_headers): Test case for the above. BonfaceKilz