{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":98203430,"defaultBranch":"master","name":"bystro","ownerLogin":"bystrogenomics","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-07-24T15:03:37.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/87025676?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716994422.0","currentOid":""},"activityList":{"items":[{"before":"baa8db16e8ede223e90f16e598487bfe423977af","after":"36918e266da11bf9737b43ebd47bc9552d2896d0","ref":"refs/heads/release/2.0.0-beta12","pushedAt":"2024-05-29T14:51:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Update pyproject.toml to reflect 2.0.0-beta12 label","shortMessageHtmlLink":"Update pyproject.toml to reflect 2.0.0-beta12 label"}},{"before":null,"after":"baa8db16e8ede223e90f16e598487bfe423977af","ref":"refs/heads/release/2.0.0-beta12","pushedAt":"2024-05-29T14:51:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[annotation, proteomics] Refine annotation api interface, proteomic api join interface (#515)\n\n* Refines annotation dataset: melt_by_field => explode_field,\r\nmelt_by_samples => melt_samples, and improve docstring explanations for\r\nboth. These names more accurately describe what these arguments do\r\n* Refine proteomic join interface, and TandemMassTagDataset:\r\nTandemMassTagDataset class is now a msgspec.Struct, and we do not force\r\ndrop fields. We also now do not force rename fields, besides Index =>\r\ngene_name; this may be restored in the future as we support additional\r\nvariations of Frappe datasets\r\n* Enable ability to join on either gene_name or ProteinID columns.\r\n* Improve the example proteomic notebook to better demonstrate\r\nmelting_samples and explode_field\r\n\r\n---------\r\n\r\nCo-authored-by: cristinaetrv <24943967+cristinaetrv@users.noreply.github.com>","shortMessageHtmlLink":"[annotation, proteomics] Refine annotation api interface, proteomic a…"}},{"before":"57feaedbb0ac3311a66718dec801f8dd21ddfd0f","after":"baa8db16e8ede223e90f16e598487bfe423977af","ref":"refs/heads/master","pushedAt":"2024-05-29T14:45:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[annotation, proteomics] Refine annotation api interface, proteomic api join interface (#515)\n\n* Refines annotation dataset: melt_by_field => explode_field,\r\nmelt_by_samples => melt_samples, and improve docstring explanations for\r\nboth. These names more accurately describe what these arguments do\r\n* Refine proteomic join interface, and TandemMassTagDataset:\r\nTandemMassTagDataset class is now a msgspec.Struct, and we do not force\r\ndrop fields. We also now do not force rename fields, besides Index =>\r\ngene_name; this may be restored in the future as we support additional\r\nvariations of Frappe datasets\r\n* Enable ability to join on either gene_name or ProteinID columns.\r\n* Improve the example proteomic notebook to better demonstrate\r\nmelting_samples and explode_field\r\n\r\n---------\r\n\r\nCo-authored-by: cristinaetrv <24943967+cristinaetrv@users.noreply.github.com>","shortMessageHtmlLink":"[annotation, proteomics] Refine annotation api interface, proteomic a…"}},{"before":"4efc71af1fe334028089bf50e7aba93b4b3103d6","after":"57feaedbb0ac3311a66718dec801f8dd21ddfd0f","ref":"refs/heads/master","pushedAt":"2024-05-28T20:08:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[annotation, proteomics, search] Simple interface for querying Bystro Search Engine (#512)\n\n* Intuitive interface for querying Bystro search engine and outputting\r\nthe results to a Pandas dataframe.\r\n* Flattens representations where possible, outputting array values only\r\nwhen necessary; for consistency some tracks always have their values\r\noutputted as array values (configurable, by default the gene track and\r\nnearest gene tracks we define in our default yaml)\r\n* Add ability to melt the resulting dataframe by heterozygotes,\r\nhomozygotes, and missingGenos columns, resulting in a \"sample\" and\r\n\"dosage\" column, where \"sample\" records the sample name, and \"dosage\" is\r\n1 if the sample came from the heterozygotes column, 2 if from\r\nhomozygotes, or -1 if from missingGenos.\r\n* Change the proteomics joining function to\r\n`join_annotation_result_to_fragpipe_dataset` to make it clear that this\r\nis specific to fragpipe.\r\n* Joined proteomic dataset no longer has duplicate columns sample_id and\r\ngene_name (which have corresponding `sample` and `refSeq.name2` columns\r\nin the annotation dataframe), and we have standardized the protein\r\nabundance column, previously called `value` to `protein_abundance`.\r\n\r\nExample output attached\r\n\r\nWIP label will be removed when tests added\r\n\r\nExample outputs:\r\n\r\n[example_query_to_df_outputs.zip](https://github.com/bystrogenomics/bystro/files/15412755/example_query_to_df_outputs.zip)\r\n\r\nExample notebook:\r\n\r\n[ExampleQueryToDataFrame.ipynb.zip](https://github.com/bystrogenomics/bystro/files/15412764/ExampleQueryToDataFrame.ipynb.zip)\r\n\r\n\r\nTL;DR:\r\n\r\n```python\r\nfrom bystro.api import auth\r\nfrom bystro.proteomics.annotation_interface import get_annotation_result_from_query\r\n\r\nuser = auth.login('email', 'password', 'https://bystro-dev.emory.edu')\r\nindex_name = '663ac4bfa0e17a1660ba8130_657a50d4b2d0278938ba791d'\r\n\r\nquery_result_df = get_annotation_result_from_query(\r\n query_string=\"*\",\r\n index_name= index_name,\r\n bystro_api_auth=user,\r\n melt_by_samples=False\r\n)\r\nquery_result_df.head(n=10)\r\n```\r\n\r\nFields of interest can be provided (though the locus fields chrom, pos,\r\ninputRef, alt, type, and a generated \"locus\" field will always be\r\nprovided):\r\n\r\n```python\r\nquery_result_df = get_annotation_result_from_query(\r\n query_string=\"*\",\r\n index_name= index_name,\r\n bystro_api_auth=user,\r\n fields=['gnomad.exomes.AF', 'gnomad.genomes.AF'] # will only output the locus fields + these 2 will be fetched and outputted,\r\n melt_by_samples=False\r\n)\r\n```\r\n\r\n---------\r\n\r\nCo-authored-by: cristinaetrv <24943967+cristinaetrv@users.noreply.github.com>","shortMessageHtmlLink":"[annotation, proteomics, search] Simple interface for querying Bystro…"}},{"before":"cc236443d540fdab41631ae056449f8ef4ef0487","after":"4efc71af1fe334028089bf50e7aba93b4b3103d6","ref":"refs/heads/master","pushedAt":"2024-05-23T21:55:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[api, proteomics] Proxy OpenSearch Requests (#508)\n\n* Proxy OpenSearch requests, allowing users to directly query the\r\nOpenSearch cluster, even outside the cluster, by way of the Bystro API\r\nserver\r\n\r\nThis will enable useful telemetry, while still ensuring adequate\r\nsecurity. Not all requests are handled, but all the requests we need for\r\nfetching annotation data in bulk, and joining on proteomic data, without\r\nneeding to go through the queue.\r\n\r\nThis makes our proteomic filtering functionality directly useful, and\r\nopens the door to enable users to programmatically do other things that\r\nrequire the search engine, like filtering annotations, without requiring\r\nbatch job submissions through the queue. This will probably be popular\r\nfor cases where the data is small enough, or the user wants to manually\r\ndistribute execution (say they want to use some other batch scheduler)\r\n\r\nIn a future PR we will move the `get_annotation_result_from_query` and\r\n`get_annotation_result_from_query_async` functions out of proteomics.py,\r\nand into api/search.py\r\n\r\nExample Notebooks:\r\n\r\n[ProteomicsProxiedQuery(1).zip](https://github.com/bystrogenomics/bystro/files/15384205/ProteomicsProxiedQuery.1.zip)\r\n\r\n[BasicProxyQuery.zip](https://github.com/bystrogenomics/bystro/files/15384206/BasicProxyQuery.zip)\r\n\r\nCorresponds to: https://github.com/bystrogenomics/bystro-web/pull/448","shortMessageHtmlLink":"[api, proteomics] Proxy OpenSearch Requests (#508)"}},{"before":"9dd5066ca0d1611acddec069459e60dc92443d7c","after":"cc236443d540fdab41631ae056449f8ef4ef0487","ref":"refs/heads/master","pushedAt":"2024-05-21T20:47:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Add adjustable p value thresholds for PRS C+T. (#507)\n\nPreviously, the p-value threshold was hardcoded for early testing. Now\r\nit can take in p-value thresholds as floats between 0 and 1.","shortMessageHtmlLink":"Add adjustable p value thresholds for PRS C+T. (#507)"}},{"before":"d10b1c278a34ad4b7c05ae93ca9814c4cc133f91","after":"9dd5066ca0d1611acddec069459e60dc92443d7c","ref":"refs/heads/master","pushedAt":"2024-05-21T03:01:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Random matrix theory methods (#502)\n\nThis creates the random matrix theory module which will form the basis\r\nfor some of our significance tests.","shortMessageHtmlLink":"Random matrix theory methods (#502)"}},{"before":"f4a779326a49439a973fa3e7a2dfa40985557998","after":"d10b1c278a34ad4b7c05ae93ca9814c4cc133f91","ref":"refs/heads/master","pushedAt":"2024-05-20T21:20:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Feature/issue 421 better proteomic filtering (#504)\n\n* Add ability to get annotation dataframe based on any field","shortMessageHtmlLink":"Feature/issue 421 better proteomic filtering (#504)"}},{"before":"f423805140e0f8d06acb66b8b8f1ed5c2173770b","after":"f4a779326a49439a973fa3e7a2dfa40985557998","ref":"refs/heads/master","pushedAt":"2024-05-20T17:55:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"Add POIROT methods, testing file, and pickle file with test data (#505)\n\nImplemented POIROT methods for detecting parent-of-origin effects.\r\nCreated a testing script to validate the POIROT methods, asserting that\r\nthe output is the same as the original R code from POIROT-POE","shortMessageHtmlLink":"Add POIROT methods, testing file, and pickle file with test data (#505)"}},{"before":"7729ca68a16f7da0f95e955d0838624bf4634d51","after":"f423805140e0f8d06acb66b8b8f1ed5c2173770b","ref":"refs/heads/master","pushedAt":"2024-05-20T02:23:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"Implement geodesic functions and add unit tests with expected results (#506)\n\nImplement geodesic functions from pyRiemann.\r\nAdd test cases to compare custom implementations with pyriemann's\r\ngeodesic functions, test different alpha values and ensure results match\r\nexpected outputs.","shortMessageHtmlLink":"Implement geodesic functions and add unit tests with expected results ("}},{"before":"17a10e62cea04c7fc7391a4f61cd9c89ca319287","after":"7729ca68a16f7da0f95e955d0838624bf4634d51","ref":"refs/heads/master","pushedAt":"2024-05-16T17:58:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"fix install to reflect the fact that we're still using beta tags (#503)\n\n* We need to use --pre to install pip packages with beta tags. While we\r\nwill release a production Bystro 2.0 this summer, we are not there yet,\r\nso we need to use --pre.","shortMessageHtmlLink":"fix install to reflect the fact that we're still using beta tags (#503)"}},{"before":"9379733cf045bcc6e1a7db7cd3d53a865f264dd2","after":"17a10e62cea04c7fc7391a4f61cd9c89ca319287","ref":"refs/heads/master","pushedAt":"2024-05-15T18:55:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"Add Euclidean and Riemann median calculation functions (#498)\n\nAdds Euclidean median function with tests and initial attempt at Riemann\r\nmedian function with tests\r\n\r\n---------\r\n\r\nCo-authored-by: Alex V. Kotlar ","shortMessageHtmlLink":"Add Euclidean and Riemann median calculation functions (#498)"}},{"before":"440ab64b14a3c5c6b6a187242b3e29ba12b0f90f","after":"9379733cf045bcc6e1a7db7cd3d53a865f264dd2","ref":"refs/heads/master","pushedAt":"2024-05-15T17:47:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"update canopy to somadata (#500)\n\n* As of https://github.com/SomaLogic/Canopy/issues/6, canopy package is\r\nnow pip installable and is renamed somadata","shortMessageHtmlLink":"update canopy to somadata (#500)"}},{"before":"bf0759f5ba7a2a928b4a234555f778b37e536c44","after":"440ab64b14a3c5c6b6a187242b3e29ba12b0f90f","ref":"refs/heads/master","pushedAt":"2024-05-15T15:52:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[infrastructure] make canopy direct dependency until SomaLogic makes pypi package (#499)\n\n* Fixes release creation, which was failing because we rely on Canopy,\r\nwhich does not have a pypi package. To solve this we update our\r\ninstructions to inform users that they for now need to install canopy\r\n* fixes perltidy error, which for some reason was only see on release\r\n* fixes how liftover is imported, so we do not query the UCSC server\r\nunless necessary\r\n* updates liftover dependency, so that it can use alternate UCSC mirrors\r\n* adds missing ancestry api test\r\n\r\nThis solution is temporary; once SomaLogic makes a pypi package, we will\r\ndepend on that instead: https://github.com/SomaLogic/Canopy/issues/6. If\r\nthey choose not to, we will publish our own.","shortMessageHtmlLink":"[infrastructure] make canopy direct dependency until SomaLogic makes …"}},{"before":"8c78f23bda2637893138fc550756f8fa3d3d37b3","after":"bf0759f5ba7a2a928b4a234555f778b37e536c44","ref":"refs/heads/master","pushedAt":"2024-05-15T15:45:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"Optimal singular value shrinkage for operator norm (#492)\n\n…h unit tests\r\n\r\nThis commit introduces a new function to perform singular value\r\nshrinkage using the method described in the paper \"Optimal Singular\r\nValue Shrinkage for Operator Norm Loss\" by William Leeb. The implemented\r\nshrinkage method is designed to be optimal for denoising low-rank\r\nmatrices, particularly adjusting for different aspect ratios of\r\nmatrices. The commit also includes unit tests that ensure the largest\r\nshrunken singular value does not deviate excessively.","shortMessageHtmlLink":"Optimal singular value shrinkage for operator norm (#492)"}},{"before":null,"after":"af48e78ca2a2e03382635e2fa24315a40f6af26d","ref":"refs/heads/dependabot/pip/python/setuptools-65.5.1","pushedAt":"2024-05-13T23:57:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"Bump setuptools from 65.5.0 to 65.5.1 in /python\n\nBumps [setuptools](https://github.com/pypa/setuptools) from 65.5.0 to 65.5.1.\n- [Release notes](https://github.com/pypa/setuptools/releases)\n- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)\n- [Commits](https://github.com/pypa/setuptools/compare/v65.5.0...v65.5.1)\n\n---\nupdated-dependencies:\n- dependency-name: setuptools\n dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"Bump setuptools from 65.5.0 to 65.5.1 in /python"}},{"before":"c6c0f93764c0c5500ded80e8f36542f611eb6fe3","after":"8c78f23bda2637893138fc550756f8fa3d3d37b3","ref":"refs/heads/master","pushedAt":"2024-05-13T23:56:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[infrastructure] Improve Python build process (#496)\n\n* Rely on pyproject.toml instead of requirements.txt\r\n* Update dependencies to ensure that we are compatible with M1+ Macs\r\n* Create CI workflow to build and publish wheels to PyPI on Mac, Linux,\r\nand Windows (Windows support is limited and experimental, as noted in\r\nINSTALL.md). Mac supports aarch64 and x86_64. Linux is currently x86_64,\r\nas is Windows.\r\n\r\n---------\r\n\r\nCo-authored-by: cristinaetrv <24943967+cristinaetrv@users.noreply.github.com>","shortMessageHtmlLink":"[infrastructure] Improve Python build process (#496)"}},{"before":"ab90b62984f78a8963be628bc38b67bdd70ca8eb","after":"c6c0f93764c0c5500ded80e8f36542f611eb6fe3","ref":"refs/heads/master","pushedAt":"2024-05-13T21:25:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Optimize PRS C+T preprocess for performance. (#493)\n\nOptimizes the C+T preprocess by performing clumping and thresholding on\r\nthe gwas summary stat scores using only the overlap of loci between the\r\nlocus column from the dosage matrix rather than including the entire\r\ndatasets in preprocessing steps.","shortMessageHtmlLink":"Optimize PRS C+T preprocess for performance. (#493)"}},{"before":"0c240d3e913453d1511ae3b38c100df9a6da09a4","after":"ab90b62984f78a8963be628bc38b67bdd70ca8eb","ref":"refs/heads/master","pushedAt":"2024-05-11T11:02:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[annotation] Remove duplicate entries due to isCanonical (#490)\n\n* Our isCanonical field addition to refSeq track was done using a LEFT\r\nJOIN, which resulted in occasional duplicate refSeq transcript entires.\r\nThis PR solves that by removing the reliance on LEFT JOIN, and instead\r\ntake the maximum value (\"true\" > \"false) from a list of matching\r\nisCanonical possibilities.\r\n\r\n#### Justification:\r\nWe annotate against refGene transcripts, which are identified by\r\nrefGene.name. isCanonical indicates whether a knownGene transcript is\r\ncanonical or not. For each of our refSeq track (refGene UCSC mysql\r\ntable) transcripts, we list every knownGene transcript that matches\r\n(kgXref.mrna = refGene.name).\r\n\r\nWhen there are multiple knownGene transcripts for a single refGene\r\ntranscript, isCanonical either has to be an array (one per knownGene\r\nentry), which will be hard to make use of, or a single entry that is\r\n\"true\" if any members of the array is \"true\". I've chosen the latter,\r\nbecause I think it will be more useful","shortMessageHtmlLink":"[annotation] Remove duplicate entries due to isCanonical (#490)"}},{"before":"1e5c9048f14701096098e341332f2917b35ecd36","after":"0c240d3e913453d1511ae3b38c100df9a6da09a4","ref":"refs/heads/master","pushedAt":"2024-05-09T00:18:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"fix get_user cli and api commands (#494)\n\n* fix get_user cli and api commands\r\n* fix query api\r\n* add basic api documentation","shortMessageHtmlLink":"fix get_user cli and api commands (#494)"}},{"before":"545f4f37bc32e87e2153f0343ebd43f206f95606","after":"1e5c9048f14701096098e341332f2917b35ecd36","ref":"refs/heads/master","pushedAt":"2024-05-08T04:19:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Add LD maps for hg38 and organize LD maps by build for PRS. (#489)\n\nAdd hg38 CEU LD map for testing initial version of PRS C+T. Currently\r\nthese correspond to bins of size 1cM for CEU LD, but clumping will be\r\nflexible in future versions and LD maps may be relocated to somewhere\r\noutside this repo.","shortMessageHtmlLink":"Add LD maps for hg38 and organize LD maps by build for PRS. (#489)"}},{"before":"f9b080e04f4005038135675413ca1cf8bef27412","after":"545f4f37bc32e87e2153f0343ebd43f206f95606","ref":"refs/heads/master","pushedAt":"2024-05-08T01:05:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"Add nonnegative covariance estimator and tests (#491)\n\nAdd class for estimating nonnegative covariance matrix, add unit tests\r\nensuring that result matrix and eigenvalues are nonnegative","shortMessageHtmlLink":"Add nonnegative covariance estimator and tests (#491)"}},{"before":"9ea590d31a82e637eb14520948411d34c2533551","after":"f9b080e04f4005038135675413ca1cf8bef27412","ref":"refs/heads/master","pushedAt":"2024-05-07T20:55:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"[search] Improve clnsig analysis (#486)\n\n* improve clinvarVcf.CLNSIG analysis, so that we can autocomplete\r\npathogen, without matching conflicting_classifications_of_pathogenicity.\r\nThis is accomplished by blocking terms that start with “conflicting” and\r\napplying edge ngram transform in all other values.\r\n\r\nThis gives a good balance between accuracy and sensitivity.\r\n\r\nWith this, `clinvarVcf.CLNSIG:pathogenic` matches `likely_pathogenic`\r\nand `pathogenic`, even if the terms are found comma separated. However\r\n\"conflicting_classifications_of_pathogenicity\" will not match, if that\r\nis the only term\r\n(\"conflicting_classifications_of_pathogenicity,pathogenic\" would match\r\nhowever).\r\n\r\nLive on bystro-dev\r\n\r\n\r\nTest queries:\r\n1. `other` matches anything with `other` as a complete term (meaning\r\nconflicting_classification_of_pathogenicity,other matches)\r\n2. `pathogenic`\r\nhttps://bystro-dev.emory.edu/results?_id=6637a7caa0e17a1660ba743b&search&q=clinvarvcf.clnsig:pathogenic&size=10&from=0\r\n3. `likely_pathogenic`\r\nhttps://bystro-dev.emory.edu/results?_id=6637a7caa0e17a1660ba743b&search&q=clinvarvcf.clnsig:likely_pathogenic&size=10&from=0\r\n4. `(likely pathogenic)`\r\nhttps://bystro-dev.emory.edu/results?_id=6637a7caa0e17a1660ba743b&search&q=clinvarvcf.clnsig:(likely%20pathogenic)&size=10&from=0\r\n5. `pa`, `pat`, `path`, `pathogen`, etc, all match the same set, because\r\nonly \"pathogenic\" starts with these characters:\r\nhttps://bystro-dev.emory.edu/results?_id=6637a7caa0e17a1660ba743b&search&q=clinvarvcf.clnsig:pathog&size=10&from=0\r\n6. `like`, `likel`, `likely` etc., all match terms starting with\r\n`likely`, such as `likely_pathogenic` and `likely_benign`:\r\nhttps://bystro-dev.emory.edu/results?_id=6637a7caa0e17a1660ba743b&search&q=clinvarvcf.clnsig:likely&size=10&from=0","shortMessageHtmlLink":"[search] Improve clnsig analysis (#486)"}},{"before":"4a31847eb42a24cc668eb66818e4e9d5beadcf23","after":"9ea590d31a82e637eb14520948411d34c2533551","ref":"refs/heads/master","pushedAt":"2024-05-06T23:35:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Add compressed versions of AD summary stats in hg19 and hg38 (#487)\n\nPreviously, AD summary stats were in uncompressed feather files and were\r\ngiving CRLF to LF warnings. These versions are compressed feather files\r\nand .gitattributes has also been updated to mark feather files as binary\r\nso that github is aware of the filetype and treats them accordingly.","shortMessageHtmlLink":"Add compressed versions of AD summary stats in hg19 and hg38 (#487)"}},{"before":"62d77fe07a9e8fc5baff8f5c597dca3bc692cb81","after":"d30f216338d3d4e2a39180e49bd0b6e561c28e82","ref":"refs/heads/dependabot/pip/python/tqdm-4.66.3","pushedAt":"2024-05-06T02:35:29.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Merge branch 'master' into dependabot/pip/python/tqdm-4.66.3","shortMessageHtmlLink":"Merge branch 'master' into dependabot/pip/python/tqdm-4.66.3"}},{"before":"e2895d2ba7d8a95ad61d5360cd57c29b9d1683bd","after":"4a31847eb42a24cc668eb66818e4e9d5beadcf23","ref":"refs/heads/master","pushedAt":"2024-05-05T22:38:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Supervision Augmented PPCA (#485)\n\nThis implements the remaining model of the augmented PCA package, which\r\nallows for supervision of the eigenvector decomposition for finding\r\npredictive networks. It also allows for extra covariance matrix\r\nestimation methods. Finally, it implements a novel method for removing\r\nsome information and encouraging other information in the latent\r\nrepresentation.","shortMessageHtmlLink":"Supervision Augmented PPCA (#485)"}},{"before":"7a330b874f5fcaa445ebac32be7d9bf51c19cf4f","after":"e2895d2ba7d8a95ad61d5360cd57c29b9d1683bd","ref":"refs/heads/master","pushedAt":"2024-05-05T00:44:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"austinTalbot7241993","name":"Austin Talbot","path":"/austinTalbot7241993","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13869899?s=80&v=4"},"commit":{"message":"Adding Singular Value Shrinkage\n\nThis comes from the paper Optimal Shrinkage Methods by Donoho 2018.","shortMessageHtmlLink":"Adding Singular Value Shrinkage"}},{"before":null,"after":"d2b601ff73e009fec831bf7f8fcda0fba5e47365","ref":"refs/heads/akotlar-patch-2","pushedAt":"2024-05-04T05:54:21.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Update hg19.yml database_dir to match documentation\n\n* hg19.yml database_dir should be /mnt/annotator/hg19_v9 to match documentation","shortMessageHtmlLink":"Update hg19.yml database_dir to match documentation"}},{"before":null,"after":"62d77fe07a9e8fc5baff8f5c597dca3bc692cb81","ref":"refs/heads/dependabot/pip/python/tqdm-4.66.3","pushedAt":"2024-05-03T21:19:29.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"Bump tqdm from 4.65.0 to 4.66.3 in /python\n\nBumps [tqdm](https://github.com/tqdm/tqdm) from 4.65.0 to 4.66.3.\n- [Release notes](https://github.com/tqdm/tqdm/releases)\n- [Commits](https://github.com/tqdm/tqdm/compare/v4.65.0...v4.66.3)\n\n---\nupdated-dependencies:\n- dependency-name: tqdm\n dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"Bump tqdm from 4.65.0 to 4.66.3 in /python"}},{"before":"886a55bd4263a1df0ef9d9b9db7bf0981f340fd8","after":"7a330b874f5fcaa445ebac32be7d9bf51c19cf4f","ref":"refs/heads/master","pushedAt":"2024-05-03T14:43:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akotlar","name":"Alex V. Kotlar","path":"/akotlar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5543229?s=80&v=4"},"commit":{"message":"Enhance Covariance Matrix Estimation with Symmetry Enforcement and Warnings (#480)\n\nThis pull request introduces an improvement in the covariance matrix\r\nestimation process by ensuring that the matrix remains symmetric\r\nthroughout the computation. We have implemented an auxiliary function,\r\n`symmetrize_and_warn`, that adjusts the matrix by setting `S_new = (S +\r\nS.T) / 2`. This function is designed to enforce symmetry and alert the\r\nuser when significant adjustments are made to the matrix.\r\n\r\n### Key changes include:\r\n- Addition of the `symmetrize_and_warn` function which symmetrizes the\r\ncovariance matrix and generates warnings if the modifications are\r\nsubstantial.\r\n- Integration of this function into the existing matrix estimation\r\nworkflow to automatically ensure the symmetry of the output.\r\n\r\nThis enhancement helps prevent errors in subsequent analyses that rely\r\non the symmetry of the covariance matrix, thereby increasing the\r\nrobustness of our statistical computations.","shortMessageHtmlLink":"Enhance Covariance Matrix Estimation with Symmetry Enforcement and Wa…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEVxO0XAA","startCursor":null,"endCursor":null}},"title":"Activity · bystrogenomics/bystro"}