about summary refs log tree commit diff
AgeCommit message (Collapse)Author
2025-09-08Link to PlantUML images built by the CI. HEAD mainArun Isaac
We no longer commit the built images into the git repository. Committing build artifacts into the repository is never good practice. And, linking to CI build artifacts is also more automatic and seamless.
2025-09-08Specify PlantUML output filenames.Arun Isaac
This is so that we don't end up with long Guix store hashes in the output filename when these images are built on CI using the Guix computed-file.
2025-09-08Replace PlantUML image generation script with Guix computed-file.Arun Isaac
2025-09-08Hint at pyhegp commands in UML visualization.Arun Isaac
2025-09-08Add @startuml and @enduml tags.Arun Isaac
2025-09-08Split up hsmice test into smaller computed files.Arun Isaac
This will give us slightly better caching and code organization.
2025-09-08Exclude .guix and e2e-tests from the pyhegp package.Arun Isaac
2025-09-08Detail SNP dropping.Arun Isaac
2025-09-08Update README instructions with phenotype encryption.Arun Isaac
2025-09-08Comment on QTL checking code.Arun Isaac
2025-09-06Update r-mixed-model-gwas to 1.3.1.Arun Isaac
2025-09-06Add end-to-end tests for hsmice dataset.Arun Isaac
* Add hsmice dataset wrangling and test scripts. * Add G-expression script to run test. * Depend on the guix-bioinformatics Guix channel for r-genio.
2025-09-06Construct empty genotype frame using series.Arun Isaac
2025-09-06Roll cat_data_frames into cat_genotype.Arun Isaac
cat_data_frames is no longer a special function used by both cat_genotype and cat_phenotype. Specialize it and roll it into cat_genotype.
2025-09-06Catenate phenotype frames along the index.Arun Isaac
2025-09-06Split catenable phenotype frames along the index.Arun Isaac
Phenotype frames are split by sample IDs. This corresponds to splitting along the index, unlike genotype frames which need to be split along the columns.
2025-09-06Generalize split_data_frame to split along any axis.Arun Isaac
2025-09-06Simplify split_data_frame so it is more composable.Arun Isaac
split_data_frame should only split the data frame. It should not be filtering out metadata columns.
2025-09-05Generate unique SNPs in genotype frames without dropping duplicates.Arun Isaac
Earlier, we were generating unique SNPs in genotype frames by dropping duplicates. This meant we couldn't control the number of SNPs. Rejection sampling is also not an option because it is too expensive. So, we now generate unique SNPs directly, by first generating a list with unique elements and then converting to a data frame.
2025-09-05Deduplicate genotype frame metadata generation.Arun Isaac
Abstract out generation of genotype frame metadata (namely chromosome, position and reference) from summaries and genotype_frames into a new helper function genotype_metadata.
2025-09-05Drop SNPs with a zero standard deviation.Arun Isaac
2025-09-05Fix typo in comment: tha->that.Arun Isaac
2025-09-04Avoid wildcard import from helpers.strategies.Arun Isaac
2025-09-04Limit values in genotype and phenotype strategies.Arun Isaac
2025-09-04Test that ciphertext does not contain NA values.Arun Isaac
2025-09-04Parameterize number of samples in phenotype frame strategy.Arun Isaac
2025-09-04Parameterize number of samples in genotype frame strategy.Arun Isaac
2025-09-04Parameterize presence of reference column in genotype frame strategy.Arun Isaac
2025-09-04Add keys strategy.Arun Isaac
Add keys strategy, and use it.
2025-09-04Raise exception if data frame to be written has NA values.Arun Isaac
This should never occur, but can occur due to bugs in the code; we wish to protect against that.
2025-09-04Add --force flag to encrypt subcommand permitting file overwriting.Arun Isaac
2025-09-04Support encrypting phenotypes.Arun Isaac
2025-09-04Compare complete frame in test_cat_*.Arun Isaac
It is so much simpler and much more robust to simply compare expected and actual data frames.
2025-09-04Do not import unused settings from hypothesis.Arun Isaac
2025-09-04Test cat_phenotype.Arun Isaac
2025-09-04Add cat-phenotype subcommand.Arun Isaac
2025-09-02Rename cat subcommand to cat-genotype.Arun Isaac
A cat-phenotype subcommand is coming. Hence rename this.
2025-09-02Add is_phenotype_metadata_column.Arun Isaac
Promote phenotype_reserved_column_name_p from helpers.strategies to is_phenotype_metadata_column in pyhegp.serialization.
2025-09-02Drop duplicates in generated test phenotype frames.Arun Isaac
2025-09-02Set CI environment variable when building Guix package.Arun Isaac
2025-09-02Merge, not concat, genotype frames.Arun Isaac
pd.concat duplicates the metadata columns, and is generally the wrong approach to the problem.
2025-09-02Test cat_genotype.Arun Isaac
Test cat_genotype extensively using hypothesis.
2025-09-02Add is_genotype_metadata_column.Arun Isaac
Promote genotype_reserved_column_name_p from helpers.strategies to is_genotype_metadata_column in pyhegp.serialization, and use it everywhere.
2025-09-02Drop duplicates in generated test genotype frames.Arun Isaac
2025-09-02Catenate an empty list of genotypes.Arun Isaac
We handle this as a special case.
2025-09-02Move hypothesis strategies to separate file.Arun Isaac
These strategies may be used by other test modules as well.
2025-09-02Add cat_genotype workhorse function.Arun Isaac
Move workhorse logic of the cat command to a separate function. This will make it easy to test the logic without having to invoke the command itself.
2025-09-02Suffix CLI subcommand functions with _command.Arun Isaac
We distinguish CLI subcommand functions using the _command suffix. This way, we don't have to concoct weird names for the actual workhorse functions. To remain consistent, we also suffix _command to the command testing functions.
2025-09-01Do not require output ciphertext file path.Arun Isaac
Make output ciphertext file path implicit; infer it by appending ".hegp" to the plaintext file. We take inspiration from GnuPG.
2025-09-01Pass dtype to read_csv.Arun Isaac
read_csv can incorrectly infer that the string "00" is the integer 0. To avoid this ambiguity, pass the correct dtype to read_csv.