Age | Commit message (Expand) | Author |
2021-09-22 | Fix pylint errors...* Add missing function and module docstrings
* Remove unused imports
* Fix import order
* Rework some code sections to fix issues
* Disable some pylint errors.
| Frederick Muriuki Muriithi |
2021-09-22 | Update check: Heatmaps need at least 2 items...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Update the check to look for at least 2 traits before trying to generate the
heatmap.
| Frederick Muriuki Muriithi |
2021-09-22 | Return serialized plotly figure...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* gn3/api/heatmaps.py: Serialize the figure to JSON
* gn3/heatmaps.py: Return the figure object
Serialize the Plotly figure into JSON, and return that, so that it can be
used on the client to display the image.
| Frederick Muriuki Muriithi |
2021-09-22 | add init tests for call to script | Alexander Kabui |
2021-09-22 | add required wgcna dependencies to guix.scm | Alexander Kabui |
2021-09-22 | jsonify results | Alexander Kabui |
2021-09-22 | init endpoint tests for wgcna | Alexander Kabui |
2021-09-20 | Enable Cross-Origin Resource Sharing...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* gn3/api/heatmaps.py: Fix bugs in data parsing
* gn3/app.py: enable CORS
* gn3/settings.py: add flask-cors configurations
* guix.scm: Add flask-cors dependency
For easier testing of the heatmaps generation feature, this commit activates
the cross-origin resource sharing for all "localhost" origins.
| Frederick Muriuki Muriithi |
2021-09-20 | Remove proof-of-concept test code...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Remove the proof-of-concept CLI-only module that was used to learn how the
heatmaps work and identify the appropriate data for use with them.
| Frederick Muriuki Muriithi |
2021-09-20 | Return only the data...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* gn3/api/heatmaps.py: Parse incoming data to build up correct trait names and
respond with only the computed heatmap data.
* gn3/heatmaps.py: Return only the computed data for heatmaps and clustering.
Since GN3 is supposed to handle only the data, and db-access, this commit
ensures that GN3 responds to the client with only the computed heatmap data,
and does not try to generate the heatmaps themselves.
The generation of the heatmaps will be delegated to the UI clients, such as
GeneNetwork2.
| Frederick Muriuki Muriithi |
2021-09-17 | Fix a number of linting issues...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
| Frederick Muriuki Muriithi |
2021-09-17 | Return path to generated filename for now...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* To help with demonstrating that the code is producing the expected output,
for now, we return the path to the generated html file that displays the
interactive heatmap.
At this point, it is mostly useful in the development environment. Moving
forward, we might have to actually stream the raw html, or if we can get the
Kaleido library packaged for GNU Guix, stream the images binary data instead.
| Frederick Muriuki Muriithi |
2021-09-17 | Fix some layout issues and update colorscale...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Update the plot layouts and size to display the dendrogram and individual
chromosome heatmaps side by side
* Update the colour scale to begin with the grays rather than absolute black
| Frederick Muriuki Muriithi |
2021-09-17 | Create dendrogram to show clustering tree...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Provide the clustering data to be used for the creation of the clustering
dendrogram in the final clustered heatmap plot.
| Frederick Muriuki Muriithi |
2021-09-16 | pylint fixes | Alexander Kabui |
2021-09-16 | Add WGCNA_SCRIT env to settings | Alexander Kabui |
2021-09-16 | init tests for wgcna | Alexander Kabui |
2021-09-16 | pass user input to call script | Alexander Kabui |
2021-09-16 | Intergrate the heatmap generation with the API...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Intergrate the heatmap generation code on the /api/heatmaps/clustered
endpoint.
The endpoint should take a json query of the form:
{"traits_names": [ ... ] }
where the "traits_name" value is a list of the full names of traits.
A sample query to the endpoint could be something like the following:
curl -i -X POST "http://localhost:8080/api/heatmaps/clustered" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"traits_names": [
"UCLA_BXDBXH_CARTILAGE_V2::ILM103710672",
"UCLA_BXDBXH_CARTILAGE_V2::ILM2260338",
"UCLA_BXDBXH_CARTILAGE_V2::ILM3140576",
"UCLA_BXDBXH_CARTILAGE_V2::ILM5670577",
"UCLA_BXDBXH_CARTILAGE_V2::ILM2070121",
"UCLA_BXDBXH_CARTILAGE_V2::ILM103990541",
"UCLA_BXDBXH_CARTILAGE_V2::ILM1190722",
"UCLA_BXDBXH_CARTILAGE_V2::ILM6590722",
"UCLA_BXDBXH_CARTILAGE_V2::ILM4200064",
"UCLA_BXDBXH_CARTILAGE_V2::ILM3140463"
]
}'
which should respond with a json response containing the raw binary string
for the png format and possibly another for the svg format.
| Frederick Muriuki Muriithi |
2021-09-16 | Fix minor bugs...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Fix a few minor bugs left over from the integration of code from the
proof-of-concept code.
| Frederick Muriuki Muriithi |
2021-09-16 | Add missing imports...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Add missing imports that are needed in the code.
| Frederick Muriuki Muriithi |
2021-09-16 | run cmd and add exception handler | Alexander Kabui |
2021-09-16 | register wgcna blueprint | Alexander Kabui |
2021-09-16 | add initial endpoint for wgcna | Alexander Kabui |
2021-09-16 | add function to compose and run wgcna script | Alexander Kabui |
2021-09-16 | function to parse form data and write to json file | Alexander Kabui |
2021-09-15 | initial test file for wgcna | Alexander Kabui |
2021-09-15 | init wgcna file to run r script and preprocess data | Alexander Kabui |
2021-09-15 | remove golang package causing build failure | Alexander Kabui |
2021-09-15 | Update entry-point function for heatmap generation...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Copy over code from the proof-of-concept implementation and clean it up a
little for the entry-point function for heatmap generation via the API
| Frederick Muriuki Muriithi |
2021-09-15 | Generate heatmaps in a single plot...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Add a function to generate the heatmaps for each chromosome into a single
plot.
| Frederick Muriuki Muriithi |
2021-09-15 | Process data into format usable by heatmaps...* gn3/heatmaps.py: implement `process_traits_data_for_heatmap` function, that
will process the data into a form usable by heatmaps.
* tests/unit/test_heatmaps.py: check that the function processes the data into
the correct form.
| Frederick Muriuki Muriithi |
2021-09-15 | Integrate get_lsr_from_chr function...* gn3/heatmaps.py: copy over function
* tests/unit/test_heatmaps.py: add tests
Copy function over from proof of concept and add some tests to ensure it
works as expected.
| Frederick Muriuki Muriithi |
2021-09-15 | Reorganise modules...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* The heatmap generation does not fall cleanly within the computations or db
modules. This commit moves it to the higher level gn3 module.
| Frederick Muriuki Muriithi |
2021-09-15 | Fix format of arguments and expected values...* tests/unit/computations/test_heatmap.py: ordering is not longer provided as
a list of tuples; the ordering values are just a list of numbers now. This
commit updates the test to take this into consideration.
* tests/unit/computations/test_qtlreaper.py: the 'Chr' value if numeric, is
represented by an actual number, not a string. This commit updates the code
to take this into consideration.
| Frederick Muriuki Muriithi |
2021-09-15 | Add missing sample file for tests...* tests/unit/db/data/genotypes/genotype_sample1.geno: new file
Add a missing sample data file needed for unit tests.
| Frederick Muriuki Muriithi |
2021-09-15 | minor fixes | Alexander Kabui |
2021-09-15 | rename variables && delete debugs | Alexander Kabui |
2021-09-15 | Fetch IMAGE_DIR env and add img location | Alexander Kabui |
2021-09-14 | remove debug statements | Alexander Kabui |
2021-09-14 | function to generate rand str for image | Alexander Kabui |
2021-09-14 | plot plotDendroAndColors and generate png | Alexander Kabui |
2021-09-14 | construct gene co-expression network & module detection | Alexander Kabui |
2021-09-14 | compute the softthreshhold | Alexander Kabui |
2021-09-14 | Checking data for excessive missing values | Alexander Kabui |
2021-09-14 | load the required data for analysis | Alexander Kabui |
2021-09-14 | init commit for wgcna script | Alexander Kabui |
2021-09-09 | Update proof-of-concept code...* Add individual heatmaps
* Add dendograms
* Merge multiple heatmaps to single plot
Updated the proof of concept code to provide a sample of what is needed to
generate the appropriate heatmaps.
To generate the sample heatmaps, one can run something like:
env SQL_URI="mysql://webqtlout:webqtlout@127.0.0.1:3306/db_webqtl" \
python3 qtlfilesexport.py
assuming that the database can be accessed at 127.0.0.1:3306
| Muriithi Frederick Muriuki |
2021-09-08 | Ease search for traits and chromosomes...Issue:
https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi
* Return a dict of values rather than list for the traits and chromosomes to
ease searching through the data.
| Muriithi Frederick Muriuki |
2021-09-08 | Parse Chr value as int where possible...* To ease sorting of data by numerical order down the line, sort the "Chr"
values by numerical order.
| Muriithi Frederick Muriuki |