-
Notifications
You must be signed in to change notification settings - Fork 179
Anopheles refactor #366
Copy link
Copy link
Open
Labels
Description
The AnophelesDataResource class is becoming a God class, there are a large number of methods covering different areas of functionality, and it is becoming unwieldy and hard to navigate and maintain.
Propose to refactor this somehow, compartmentalising different areas of functionality into separate classes.
This could be addressed in stages, breaking out different areas of functionality in different PRs:
- AnophelesBase (Anopheles refactor part 1 - AnophelesBase #380) - releases, sample_sets, ...
- AnophelesGenomeSequenceData (Anopheles refactor part 2 - AnophelesGenomeSequenceData #381) - contigs, open_genome, genome_sequence, ...
- AnophelesGenomeFeaturesData (Anopheles refactor part 3 - AnophelesGenomeFeaturesData #382) - genome_features, plot_genes, plot_transcript, ...
- AnophelesSampleMetadata (Anopheles refactor part 4 - AnophelesSampleMetadata #386) - sample_metadata, sample_cohorts, add_extra_metadata, clear_extra_metadata, count_samples, plot_samples_interactive_map, ...
- AnophelesSnpData (Anopheles refactor part 5 - AnophelesSnpData #393) - snp_sites, snp_genotypes, site_filters, snp_variants, snp_calls, snp_allele_counts, site_annotations, ...
- AnophelesHapData (Anopheles refactor part 6 - haplotype data #401)
- AnophelesAimData (Anopheles refactor part 7 - AIM genotype data #405) - aim_variants(), aim_calls(), plot_aim_heatmap(), ...
- AnophelesCnvData (Anopheles refactor CNV data access functions #404, Refactor CNV data functions for Anopheles (inc. Af1) #411)
- AnophelesIgv (Refactor Anopheles IGV #483)
- AnophelesPca (Anopheles refactor PCA functions #481)
- Refactor handling of virtual contigs (Refactor handling of virtual contigs #489)
- AnophelesSnpFrequenciesAnalysis (Refactor SNP frequencies #490)
- AnophelesG123Analysis (Refactor G123 #495)
- AnophelesFstAnalysis (Refactor Fst functions #497)
- AnophelesH12Analysis and AnophelesH1XAnalysis (Refactor H12 and H1X #503)
- AnophelesDistanceAnalysis (Improve neighbour-joining tree performance #641)
- AnophelesCnvFrequenciesAnalysis (Refactor CNV frequencies functions to their own module #665)
- AnophelesHetAnalysis
- AnophelesDiversityAnalysis
- AnophelesIhsAnalysis
- AnophelesXpehhAnalysis
- AnophelesHapClustAnalysis
- AnophelesHapNetAnalysis
- Refactor any remaining tests as much as possible to use simulated rather than real data.
Reactions are currently unavailable