aboutsummaryrefslogtreecommitdiff
path: root/gn3/computations
AgeCommit message (Collapse)Author
2022-07-29Fix failing testsFrederick Muriuki Muriithi
* gn3/computations/correlations.py: rename function * mypy.ini: deactivate mypy error about missing imports * tests/integration/test_correlation.py: mock correct function * tests/unit/computations/test_correlation.py: test correct function
2022-07-28Update sample correlations code to use multiprocessingFrederick Muriuki Muriithi
* To help speed up the processing of the correlations, convert the `compute_all_sample_correlation` function to use the multiprocessing module.
2022-07-22mypy fixesAlexander_Kabui
2022-07-22pep8 fixesAlexander_Kabui
2022-07-22linting and tests fixesAlexander_Kabui
2022-07-22compute num overlapAlexander_Kabui
2022-07-22fix for bug splitting list dataAlexander_Kabui
2022-07-22minor fixes for parsing dataAlexander_Kabui
2022-07-22code to parse tissue correlation inputAlexander_Kabui
2022-07-22mypy pylint fixesAlexander_Kabui
2022-07-22code to fetch correct sample corr dataAlexander_Kabui
2022-07-22delete dead_code;rename variablesAlexander_Kabui
2022-07-22minor fixesAlexander_Kabui
2022-06-29use explicit parametersAlexander_Kabui
2022-06-29fix issuesAlexander_Kabui
2022-06-29pylint fixesAlexander
2022-06-29minor fixesAlexander
2022-06-29handle tmp files generationAlexander
2022-06-29parse output dataAlexander
2022-06-29pep8 formattingAlexander
2022-06-29init rust correlation moduleAlexander
2022-05-30Pass trait data as args to `fix_strains` and fix some bugsFrederick Muriuki Muriithi
The `fix_strains` function works on the trait data, not the basic trait info. This commit fixes the arguments passed to the function, and also some bugs in the function.
2022-05-24New script to compute partial correlationsFrederick Muriuki Muriithi
* 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.
2022-05-21Use multiprocessing to improve performanceFrederick Muriuki Muriithi
2022-05-21Process primary, target and control traits in a single iterationFrederick Muriuki Muriithi
Rework the code to process the traits in a single iteration to improve performance.
2022-05-21Return generator object rather than tuplesFrederick Muriuki Muriithi
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.
2022-05-06Fix linting and typing errorsFrederick Muriuki Muriithi
2022-05-06Hook up pcorrs with target traits computationsFrederick Muriuki Muriithi
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
2022-05-05Compute partial correlation with selected traitsFrederick Muriuki Muriithi
Compute partial correlations against a selection of traits rather than against an entire dataset.
2022-05-05Extract common error checking. Rename function.Frederick Muriuki Muriithi
* Extract the common error checking code into a separate function * Rename the function to make its use clearer
2022-05-03Refactor: Remove unnecessary loopFrederick Muriuki Muriithi
Remove an unnecessary looping construct to help with speeding up the partial correlations somewhat.
2022-03-29Remove unused moduleFrederick Muriuki Muriithi
* Remove a module that is no longer in use
2022-03-23Run python-black on file and fix other pylint issues.BonfaceKilz
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.
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 ↵zsloan
position in pair-scan results + return only the sorted top 500 results
2022-03-22Added genofile name to inputs for processing R/qtl pair-scan results, since ↵zsloan
it's needed to store the proximal/distal markers for each position
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 ↵zsloan
Dict and List respectively used for the pair scan figure and the table showing the results
2022-03-22Added pairscan boolean kwarg and process_rqtl_pairscan function for reading ↵zsloan
in pairscan results + renamed process_rqtl_output to process_rqtl_mapping to distinguish between that and pairscan
2022-03-15Feature/refactored pca (#79)Alexander Kabui
* 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_pca
2022-03-11Fix typing errorsFrederick Muriuki Muriithi
2022-03-08Remove unused function and its testsFrederick Muriuki Muriithi
2022-03-08Fix tests, and issues caught by testsFrederick Muriuki Muriithi
Fix some issues caught by tests due to changes introducing the hand-off of the partial correlations computations to an external process Fix some issues due to the changes that introduce context managers for database connections Update some tests to take the above two changes into consideration
2022-02-25Fix issue where 0's were treated as False for the primary trait inzsloan
correlations In the original version of the if statement* I believe it was interpreted as "if a_val and (b_val is not None)". This caused values of 0 for a_val (the primary trait's values) to be evaluated as False. I changed it to compare both a_val and b_val to None. This seems to have fixed the issue. * if (a_val and b_val is not None)
2022-02-24gn3: computations: Call Popen with context manager.Arun Isaac
Context managers should be preferred when allocating resources. * gn3/computations/wgcna.py (stream_cmd_output): Call Popen with context manager.
2022-02-24gn3: Explicitly specify UTF-8 to be the file encoding.Arun Isaac
When the encoding is not specified explicitly, the system default encoding is used. This is not recommended. * gn3/computations/ctl.py (call_ctl_script), gn3/computations/gemma.py (generate_pheno_txt_file), gn3/computations/parsers.py (parse_genofile), gn3/computations/partial_correlations.py (partial_correlations_fast), gn3/computations/rqtl.py (process_rqtl_output, process_perm_output), gn3/computations/wgcna.py (dump_wgcna_data, call_wgcna_script), gn3/fs_helpers.py (jsonfile_to_dict): Explicitly specify UTF-8 to be the file encoding. * tests/unit/computations/test_gemma.py (TestGemma.test_generate_pheno_txt_file), tests/unit/computations/test_wgcna.py (TestWgcna.test_create_json_file): Test for call to open with encoding='utf-8' argument.