pore_c.model module

class pore_c.model.AlignmentFilterReason(value)[source]

Bases: str, enum.Enum

An enumeration.

Pass = 'pass'
low_mq = 'low_mq'
not_on_shortest_path = 'not_on_shortest_path'
null = 'null'
overlap_on_read = 'overlap_on_read'
short_overlap = 'short_overlap'
singleton = 'singleton'
unmapped = 'unmapped'
class pore_c.model.AlignmentRecord(*, read_idx: pore_c.model.ConstrainedIntValue, align_idx: pore_c.model.ConstrainedIntValue, align_type: pore_c.model.AlignmentType, chrom: pore_c.model.ConstrainedStrValue, start: pore_c.model.ConstrainedIntValue, end: pore_c.model.ConstrainedIntValue, strand: bool, read_name: pore_c.model.ConstrainedStrValue, read_length: pore_c.model.ConstrainedIntValue, read_start: pore_c.model.ConstrainedIntValue, read_end: pore_c.model.ConstrainedIntValue, mapping_quality: pore_c.model.ConstrainedIntValue, align_score: pore_c.model.ConstrainedIntValue, align_base_qscore: pore_c.model.ConstrainedIntValue, phase_set: int = 0, phase_qual: pore_c.model.ConstrainedIntValue = 0, haplotype: pore_c.model.ConstrainedIntValue = - 1)[source]

Bases: pore_c.model._BaseModel

An alignment derived from a BAM file

class Config[source]

Bases: object

fields = {'align_base_qscore': {'description': 'The mean read base score for the aligned segment (rounded to the nearest integer).', 'dtype': 'uint32'}, 'align_idx': {'description': 'Unique integer ID of the aligned segment', 'dtype': 'uint32'}, 'align_score': {'description': 'The alignment score as calculated by the aligner', 'dtype': 'uint32'}, 'align_type': {'description': 'The type of alignment', 'dtype': 'category'}, 'chrom': {'description': 'The chromosome/contig the read is aligned to', 'dtype': 'category'}, 'end': {'description': 'The end position on the genome of the alignment', 'dtype': 'uint32'}, 'haplotype': {'description': 'The id of the haplotype within this block, usually set to 1 or 2. A value of -1 means that this alignment is unphased', 'dtype': 'int8'}, 'mapping_quality': {'description': 'The mapping quality as calculated by the aligner', 'dtype': 'uint8'}, 'phase_qual': {'description': 'The phred-scaled quality score of the haplotype assignment', 'dtype': 'uint8'}, 'phase_set': {'description': 'The ID of the phase set, often this is the start position of the phase block', 'dtype': 'uint32'}, 'read_end': {'description': 'The end coordinate on the read (0-based)', 'dtype': 'uint32'}, 'read_idx': {'description': 'Unique integer ID of the read', 'dtype': 'uint32'}, 'read_length': {'description': 'The length of the read in bases', 'dtype': 'uint32'}, 'read_name': {'description': 'The original read name', 'dtype': 'str'}, 'read_start': {'description': 'The start coordinate on the read (0-based)', 'dtype': 'uint32'}, 'start': {'description': 'The zero-based start position on the genome of the alignment', 'dtype': 'uint32'}, 'strand': {'description': 'The alignment strand', 'dtype': 'bool'}}
use_enum_values = True
align_base_qscore: pore_c.model.ConstrainedIntValue
align_idx: pore_c.model.ConstrainedIntValue
align_score: pore_c.model.ConstrainedIntValue
align_type: pore_c.model.AlignmentType
chrom: pore_c.model.ConstrainedStrValue
end: pore_c.model.ConstrainedIntValue
classmethod from_aligned_segment(align: pysam.libcalignedsegment.AlignedSegment)pore_c.model.AlignmentRecord[source]

Extract information from a pysam Aligned segment

haplotype: pore_c.model.ConstrainedIntValue
mapping_quality: pore_c.model.ConstrainedIntValue
phase_qual: pore_c.model.ConstrainedIntValue
phase_set: int
read_end: pore_c.model.ConstrainedIntValue
read_idx: pore_c.model.ConstrainedIntValue
read_length: pore_c.model.ConstrainedIntValue
read_name: pore_c.model.ConstrainedStrValue
read_start: pore_c.model.ConstrainedIntValue
start: pore_c.model.ConstrainedIntValue
strand: bool
classmethod to_dataframe(aligns: List, chrom_order: Optional[List[str]] = None)[source]
static update_dataframe_with_haplotypes(align_df, haplotype_df)[source]
class pore_c.model.AlignmentType(value)[source]

Bases: str, enum.Enum

An enumeration.

primary = 'primary'
secondary = 'secondary'
supplementary = 'supplementary'
unmapped = 'unmapped'
class pore_c.model.FragmentRecord(*, chrom: pore_c.model.ConstrainedStrValue, start: pore_c.model.ConstrainedIntValue, end: pore_c.model.ConstrainedIntValue, fragment_id: pore_c.model.ConstrainedIntValue, fragment_length: pore_c.model.ConstrainedIntValue)[source]

Bases: pore_c.model._BaseModel

Meta-data associated with a restriction fragment

class Config[source]

Bases: object

fields = {'chrom': {'description': 'The chromosome/contig the fragment is derived from', 'dtype': 'category'}, 'end': {'description': 'The zero-based end position on the genome of the fragment', 'dtype': 'uint32'}, 'fragment_id': {'description': 'Unique integer ID of the fragment, starts at 1', 'dtype': 'uint32'}, 'fragment_length': {'description': 'Length of the fragment', 'dtype': 'uint32'}, 'start': {'description': 'The zero-based start position on the genome of the fragment', 'dtype': 'uint32'}}
use_enum_values = True
chrom: pore_c.model.ConstrainedStrValue
end: pore_c.model.ConstrainedIntValue
fragment_id: pore_c.model.ConstrainedIntValue
fragment_length: pore_c.model.ConstrainedIntValue
start: pore_c.model.ConstrainedIntValue
class pore_c.model.HaplotypePairType(value)[source]

Bases: str, enum.Enum

An enumeration.

null = 'null'
phased_h_cis = 'phased_h_cis'
phased_h_trans = 'phased_h_trans'
phased_sets_differ = 'phased_sets_differ'
semi_phased = 'semi_phased'
trans = 'trans'
unphased = 'unphased'
class pore_c.model.PoreCConcatemerRecord(*, read_name: pore_c.model.ConstrainedStrValue, read_length: pore_c.model.ConstrainedIntValue, read_idx: pore_c.model.ConstrainedIntValue, read_order: pore_c.model.ConstrainedIntValue, num_fragments: pore_c.model.ConstrainedIntValue, total_contacts: pore_c.model.ConstrainedIntValue, total_cis_contacts: pore_c.model.ConstrainedIntValue, total_trans_contacts: pore_c.model.ConstrainedIntValue, total_short_range_cis_contacts: pore_c.model.ConstrainedIntValue, total_long_range_cis_contacts: pore_c.model.ConstrainedIntValue, direct_contacts: pore_c.model.ConstrainedIntValue, direct_cis_contacts: pore_c.model.ConstrainedIntValue, direct_trans_contacts: pore_c.model.ConstrainedIntValue, direct_short_range_cis_contacts: pore_c.model.ConstrainedIntValue, direct_long_range_cis_contacts: pore_c.model.ConstrainedIntValue, indirect_contacts: pore_c.model.ConstrainedIntValue, indirect_cis_contacts: pore_c.model.ConstrainedIntValue, indirect_trans_contacts: pore_c.model.ConstrainedIntValue, indirect_short_range_cis_contacts: pore_c.model.ConstrainedIntValue, indirect_long_range_cis_contacts: pore_c.model.ConstrainedIntValue, haplotype_phased_h_cis: pore_c.model.ConstrainedIntValue, haplotype_phased_h_trans: pore_c.model.ConstrainedIntValue, haplotype_phased_sets_differ: pore_c.model.ConstrainedIntValue, haplotype_semi_phased: pore_c.model.ConstrainedIntValue, haplotype_unphased: pore_c.model.ConstrainedIntValue, max_indirect_contact_genome_distance: pore_c.model.ConstrainedIntValue, max_direct_contact_genome_distance: pore_c.model.ConstrainedIntValue, max_indirect_contact_fragment_distance: pore_c.model.ConstrainedIntValue, max_direct_contact_fragment_distance: pore_c.model.ConstrainedIntValue)[source]

Bases: pore_c.model._BaseModel

class Config[source]

Bases: object

fields = {'direct_cis_contacts': {'description': 'The number of direct cis-contacts for this read', 'dtype': 'uint32'}, 'direct_contacts': {'description': 'The total number direct (adjacent on read) contacts for this read', 'dtype': 'uint32'}, 'direct_long_range_cis_contacts': {'description': 'The number of direct cis contacts >= 20000 bases apart for this read', 'dtype': 'uint32'}, 'direct_short_range_cis_contacts': {'description': 'The number of direct cis contacts < 20000 bases apart for this read', 'dtype': 'uint32'}, 'direct_trans_contacts': {'description': 'The number of direct trans-contacts for this read', 'dtype': 'uint32'}, 'haplotype_phased_h_cis': {'description': 'The number of cis contacts where both members of the pair are phased, are part of the same phase group, and the haplotypes agree', 'dtype': 'uint32'}, 'haplotype_phased_h_trans': {'description': 'The number of cis contacts where both members of the pair are phased, are part of the same phase group, but the haplotypes differ', 'dtype': 'uint32'}, 'haplotype_phased_sets_differ': {'description': 'The number of cis contacts where both members of the pair are phased but the phase sets differ', 'dtype': 'uint32'}, 'haplotype_semi_phased': {'description': 'The number of cis contacts where one member of the pair is unphased', 'dtype': 'uint32'}, 'haplotype_unphased': {'description': 'The number of cis contacts where both members of the pair are unphased', 'dtype': 'uint32'}, 'indirect_cis_contacts': {'description': 'The number of indirect cis-contacts for this read', 'dtype': 'uint32'}, 'indirect_contacts': {'description': 'The total number indirect (non-adjacent on read) contacts for this read', 'dtype': 'uint32'}, 'indirect_long_range_cis_contacts': {'description': 'The number of indirect cis contacts >= 20000 bases apart for this read', 'dtype': 'uint32'}, 'indirect_short_range_cis_contacts': {'description': 'The number of indirect cis contacts < 20000 bases apart for this read', 'dtype': 'uint32'}, 'indirect_trans_contacts': {'description': 'The number of indirect trans-contacts for this read', 'dtype': 'uint32'}, 'max_direct_contact_fragment_distance': {'description': ('The longest distance between fragment midpoints for all direct contacts',), 'dtype': 'int32'}, 'max_direct_contact_genome_distance': {'description': ('The longest distance between alignment endpoints for all direct contacts',), 'dtype': 'int32'}, 'max_indirect_contact_fragment_distance': {'description': ('The longest distance between fragment midpoints for all indirect contacts',), 'dtype': 'int32'}, 'max_indirect_contact_genome_distance': {'description': ('The longest distance between alignment endpoints for all indirect contacts',), 'dtype': 'int32'}, 'num_fragments': {'description': 'The number of unique restriction fragments  represented in the concatemer', 'dtype': 'uint32'}, 'read_idx': {'description': 'Unique integer ID of the read', 'dtype': 'uint32'}, 'read_length': {'description': 'The length of the read in bases', 'dtype': 'uint32'}, 'read_name': {'description': 'The original read name', 'dtype': 'str'}, 'read_order': {'description': 'The number of monomers for this read', 'dtype': 'uint32'}, 'total_cis_contacts': {'description': 'The total number of cis-contacts (direct + indirect) for this read', 'dtype': 'uint32'}, 'total_contacts': {'description': 'The total (direct + indirect) number of contacts for this read', 'dtype': 'uint32'}, 'total_long_range_cis_contacts': {'description': 'The total number of cis contacts >= 20000 bases apart for this read', 'dtype': 'uint32'}, 'total_short_range_cis_contacts': {'description': 'The total number of cis contacts < 20000 bases apart for this read', 'dtype': 'uint32'}, 'total_trans_contacts': {'description': 'The total number of trans-contacts (direct + indirect) for this read', 'dtype': 'uint32'}}
use_enum_values = True
direct_cis_contacts: pore_c.model.ConstrainedIntValue
direct_contacts: pore_c.model.ConstrainedIntValue
direct_long_range_cis_contacts: pore_c.model.ConstrainedIntValue
direct_short_range_cis_contacts: pore_c.model.ConstrainedIntValue
direct_trans_contacts: pore_c.model.ConstrainedIntValue
haplotype_phased_h_cis: pore_c.model.ConstrainedIntValue
haplotype_phased_h_trans: pore_c.model.ConstrainedIntValue
haplotype_phased_sets_differ: pore_c.model.ConstrainedIntValue
haplotype_semi_phased: pore_c.model.ConstrainedIntValue
haplotype_unphased: pore_c.model.ConstrainedIntValue
indirect_cis_contacts: pore_c.model.ConstrainedIntValue
indirect_contacts: pore_c.model.ConstrainedIntValue
indirect_long_range_cis_contacts: pore_c.model.ConstrainedIntValue
indirect_short_range_cis_contacts: pore_c.model.ConstrainedIntValue
indirect_trans_contacts: pore_c.model.ConstrainedIntValue
max_direct_contact_fragment_distance: pore_c.model.ConstrainedIntValue
max_direct_contact_genome_distance: pore_c.model.ConstrainedIntValue
max_indirect_contact_fragment_distance: pore_c.model.ConstrainedIntValue
max_indirect_contact_genome_distance: pore_c.model.ConstrainedIntValue
num_fragments: pore_c.model.ConstrainedIntValue
read_idx: pore_c.model.ConstrainedIntValue
read_length: pore_c.model.ConstrainedIntValue
read_name: pore_c.model.ConstrainedStrValue
read_order: pore_c.model.ConstrainedIntValue
total_cis_contacts: pore_c.model.ConstrainedIntValue
total_contacts: pore_c.model.ConstrainedIntValue
total_long_range_cis_contacts: pore_c.model.ConstrainedIntValue
total_short_range_cis_contacts: pore_c.model.ConstrainedIntValue
total_trans_contacts: pore_c.model.ConstrainedIntValue
class pore_c.model.PoreCContactRecord(*, read_name: pore_c.model.ConstrainedStrValue, read_length: pore_c.model.ConstrainedIntValue, read_idx: pore_c.model.ConstrainedIntValue, contact_is_direct: bool = False, contact_is_cis: bool = False, contact_read_distance: int = 0, contact_genome_distance: int = 0, contact_fragment_adjacent: bool = False, contact_fragment_distance: pore_c.model.ConstrainedIntValue, haplotype_pair_type: pore_c.model.HaplotypePairType = <HaplotypePairType.null: 'null'>, align1_align_idx: pore_c.model.ConstrainedIntValue, align1_chrom: pore_c.model.ConstrainedStrValue, align1_start: pore_c.model.ConstrainedIntValue, align1_end: pore_c.model.ConstrainedIntValue, align1_strand: bool, align1_mapping_quality: pore_c.model.ConstrainedIntValue, align1_align_score: pore_c.model.ConstrainedIntValue, align1_align_base_qscore: pore_c.model.ConstrainedIntValue, align1_phase_set: int = 0, align1_phase_qual: int = 0, align1_haplotype: pore_c.model.ConstrainedIntValue = -1, align1_fragment_id: pore_c.model.ConstrainedIntValue = 0, align1_fragment_start: pore_c.model.ConstrainedIntValue = 0, align1_fragment_end: pore_c.model.ConstrainedIntValue = 0, align2_align_idx: pore_c.model.ConstrainedIntValue, align2_chrom: pore_c.model.ConstrainedStrValue, align2_start: pore_c.model.ConstrainedIntValue, align2_end: pore_c.model.ConstrainedIntValue, align2_strand: bool, align2_mapping_quality: pore_c.model.ConstrainedIntValue, align2_align_score: pore_c.model.ConstrainedIntValue, align2_align_base_qscore: pore_c.model.ConstrainedIntValue, align2_phase_set: int = 0, align2_haplotype: pore_c.model.ConstrainedIntValue = -1, align2_fragment_id: pore_c.model.ConstrainedIntValue = 0, align2_fragment_start: pore_c.model.ConstrainedIntValue = 0, align2_fragment_end: pore_c.model.ConstrainedIntValue = 0)[source]

Bases: pore_c.model._BaseModel

class Config[source]

Bases: object

fields = {'align1_align_base_qscore': {'description': 'The mean read base score for the aligned segment (rounded to the nearest integer).', 'dtype': 'uint32'}, 'align1_align_idx': {'description': 'Unique integer ID of the first aligned segment', 'dtype': 'uint32'}, 'align1_align_score': {'description': 'The alignment score as calculated by the aligner', 'dtype': 'uint32'}, 'align1_chrom': {'description': 'The chromosome/contig of the first aligned segment', 'dtype': 'category'}, 'align1_end': {'description': 'The end position on the genome of the alignment', 'dtype': 'uint32'}, 'align1_fragment_end': {'description': 'The end point on the genome of this restriction fragment', 'dtype': 'uint32'}, 'align1_fragment_id': {'description': 'The UID of the restriction fragment assigned to this alignment', 'dtype': 'uint32'}, 'align1_fragment_start': {'description': 'The start point on the genome of this restriction fragment', 'dtype': 'uint32'}, 'align1_haplotype': {'description': 'The id of the haplotype within this block, usually set to 1 or 2. A value of -1 means that this alignment is unphased', 'dtype': 'int8'}, 'align1_mapping_quality': {'description': 'The mapping quality as calculated by the aligner', 'dtype': 'uint8'}, 'align1_phase_qual': {'description': 'The phred-scaled quality score of the haplotype assignment', 'dtype': 'uint8'}, 'align1_phase_set': {'description': 'The ID of the phase set, often this is the start position of the phase block', 'dtype': 'uint32'}, 'align1_start': {'description': 'The zero-based start position on the genome of the alignment', 'dtype': 'uint32'}, 'align1_strand': {'description': 'The alignment strand', 'dtype': 'bool'}, 'align2_align_base_qscore': {'description': 'The mean read base score for the aligned segment (rounded to the nearest integer).', 'dtype': 'uint32'}, 'align2_align_idx': {'description': 'Unique integer ID of the first aligned segment', 'dtype': 'uint32'}, 'align2_align_score': {'description': 'The alignment score as calculated by the aligner', 'dtype': 'uint32'}, 'align2_chrom': {'description': 'The chromosome/contig of the first aligned segment', 'dtype': 'category'}, 'align2_end': {'description': 'The end position on the genome of the alignment', 'dtype': 'uint32'}, 'align2_fragment_end': {'description': 'The end point on the genome of this restriction fragment', 'dtype': 'uint32'}, 'align2_fragment_id': {'description': 'The UID of the restriction fragment assigned to this alignment', 'dtype': 'uint32'}, 'align2_fragment_start': {'description': 'The start point on the genome of this restriction fragment', 'dtype': 'uint32'}, 'align2_haplotype': {'description': 'The id of the haplotype within this block, usually set to 1 or 2. A value of -1 means that this alignment is unphased', 'dtype': 'int8'}, 'align2_mapping_quality': {'description': 'The mapping quality as calculated by the aligner', 'dtype': 'uint8'}, 'align2_phase_qual': {'description': 'The phred-scaled quality score of the haplotype assignment', 'dtype': 'uint8'}, 'align2_phase_set': {'description': 'The ID of the phase set, often this is the start position of the phase block', 'dtype': 'uint32'}, 'align2_start': {'description': 'The zero-based start position on the genome of the alignment', 'dtype': 'uint32'}, 'align2_strand': {'description': 'The alignment strand', 'dtype': 'bool'}, 'contact_fragment_adjacent': {'description': ('A boolean to indicate if the contact is between the same or adjacent fragments',), 'dtype': 'bool'}, 'contact_fragment_distance': {'description': 'The distance between the midpoints of the assigned fragments (valid for cis contacts only)', 'dtype': 'int32'}, 'contact_genome_distance': {'description': 'The distance between the end of the left alignment and the start of the right alignment (valid for cis contacts only)', 'dtype': 'int32'}, 'contact_is_cis': {'description': 'Both alignments come from the same chromsome/contig', 'dtype': 'bool'}, 'contact_is_direct': {'description': 'There are no intervening assigned restriction fragments on the read', 'dtype': 'bool'}, 'contact_read_distance': {'description': 'The distance between the end of the left alignment and the start of the right alignment on the read', 'dtype': 'int32'}, 'haplotype_pair_type': {'description': ('A categorical variable describing the relationship between the haplotypes assigned to each of the alignments in a contact',), 'dtype': 'category'}, 'read_idx': {'description': 'Unique integer ID of the read', 'dtype': 'uint32'}, 'read_length': {'description': 'The length of the read in bases', 'dtype': 'uint32'}, 'read_name': {'description': 'The original read name', 'dtype': 'str'}}
use_enum_values = True
align1_align_base_qscore: pore_c.model.ConstrainedIntValue
align1_align_idx: pore_c.model.ConstrainedIntValue
align1_align_score: pore_c.model.ConstrainedIntValue
align1_chrom: pore_c.model.ConstrainedStrValue
align1_end: pore_c.model.ConstrainedIntValue
align1_fragment_end: pore_c.model.ConstrainedIntValue
align1_fragment_id: pore_c.model.ConstrainedIntValue
align1_fragment_start: pore_c.model.ConstrainedIntValue
align1_haplotype: pore_c.model.ConstrainedIntValue
align1_mapping_quality: pore_c.model.ConstrainedIntValue
align1_phase_qual: int
align1_phase_set: int
align1_start: pore_c.model.ConstrainedIntValue
align1_strand: bool
align2_align_base_qscore: pore_c.model.ConstrainedIntValue
align2_align_idx: pore_c.model.ConstrainedIntValue
align2_align_score: pore_c.model.ConstrainedIntValue
align2_chrom: pore_c.model.ConstrainedStrValue
align2_end: pore_c.model.ConstrainedIntValue
align2_fragment_end: pore_c.model.ConstrainedIntValue
align2_fragment_id: pore_c.model.ConstrainedIntValue
align2_fragment_start: pore_c.model.ConstrainedIntValue
align2_haplotype: pore_c.model.ConstrainedIntValue
align2_mapping_quality: pore_c.model.ConstrainedIntValue
align2_phase_set: int
align2_start: pore_c.model.ConstrainedIntValue
align2_strand: bool
contact_fragment_adjacent: bool
contact_fragment_distance: pore_c.model.ConstrainedIntValue
contact_genome_distance: int
contact_is_cis: bool
contact_is_direct: bool
contact_read_distance: int
classmethod from_pore_c_align_pair(read_name: str, read_length: int, read_idx: int, align1, align2)[source]
haplotype_pair_type: pore_c.model.HaplotypePairType
read_idx: pore_c.model.ConstrainedIntValue
read_length: pore_c.model.ConstrainedIntValue
read_name: pore_c.model.ConstrainedStrValue
class pore_c.model.PoreCRecord(*, read_idx: pore_c.model.ConstrainedIntValue, align_idx: pore_c.model.ConstrainedIntValue, align_type: pore_c.model.AlignmentType, chrom: pore_c.model.ConstrainedStrValue, start: pore_c.model.ConstrainedIntValue, end: pore_c.model.ConstrainedIntValue, strand: bool, read_name: pore_c.model.ConstrainedStrValue, read_length: pore_c.model.ConstrainedIntValue, read_start: pore_c.model.ConstrainedIntValue, read_end: pore_c.model.ConstrainedIntValue, mapping_quality: pore_c.model.ConstrainedIntValue, align_score: pore_c.model.ConstrainedIntValue, align_base_qscore: pore_c.model.ConstrainedIntValue, phase_set: int = 0, phase_qual: pore_c.model.ConstrainedIntValue = 0, haplotype: pore_c.model.ConstrainedIntValue = -1, pass_filter: bool = True, filter_reason: pore_c.model.AlignmentFilterReason = <AlignmentFilterReason.null: 'null'>, fragment_id: pore_c.model.ConstrainedIntValue = 0, num_contained_fragments: pore_c.model.ConstrainedIntValue = 0, num_overlapping_fragments: pore_c.model.ConstrainedIntValue = 0, overlap_length: pore_c.model.ConstrainedIntValue = 0, fragment_start: pore_c.model.ConstrainedIntValue = 0, fragment_end: pore_c.model.ConstrainedIntValue = 0, perc_of_alignment: pore_c.model.ConstrainedFloatValue = 0.0, perc_of_fragment: pore_c.model.ConstrainedFloatValue = 0.0, is_contained: bool = False)[source]

Bases: pore_c.model.AlignmentRecord

An aligned segment from a BAM file with additional Pore-C related fields

class Config[source]

Bases: object

fields = {'filter_reason': {'description': 'If an alignment fails the filter the reason will be listed here', 'dtype': 'category'}, 'fragment_end': {'description': 'The end point on the genome of this restriction fragment', 'dtype': 'uint32'}, 'fragment_id': {'description': 'The UID of the restriction fragment assigned to this alignment', 'dtype': 'uint32'}, 'fragment_start': {'description': 'The start point on the genome of this restriction fragment', 'dtype': 'uint32'}, 'is_contained': {'description': 'Boolean flag to inidicate if the alignment is fully contained with the fragment', 'dtype': 'bool'}, 'num_contained_fragments': {'description': 'The number of restriction fragments completely contained within this alignment', 'dtype': 'uint32'}, 'num_overlapping_fragments': {'description': 'The number of restriction fragments overlapping this alignment', 'dtype': 'uint32'}, 'overlap_length': {'description': 'The length of the overlap between alignment and fragment', 'dtype': 'uint32'}, 'pass_filter': {'description': 'Boolean flag, true if alignment passes all filters', 'dtype': 'bool'}, 'perc_of_alignment': {'description': 'The percentage of the aligned segment that overlaps the assigned fragment', 'dtype': 'float32'}, 'perc_of_fragment': {'description': 'The percentage of the assigned restriction fragment that overlaps the aligned segment', 'dtype': 'float32'}}
use_enum_values = True
filter_reason: pore_c.model.AlignmentFilterReason
fragment_end: pore_c.model.ConstrainedIntValue
fragment_id: pore_c.model.ConstrainedIntValue
fragment_start: pore_c.model.ConstrainedIntValue
classmethod init_dataframe(align_df: AlignmentRecordDf)PoreCRecordDf[source]
is_contained: bool
num_contained_fragments: pore_c.model.ConstrainedIntValue
num_overlapping_fragments: pore_c.model.ConstrainedIntValue
overlap_length: pore_c.model.ConstrainedIntValue
pass_filter: bool
perc_of_alignment: pore_c.model.ConstrainedFloatValue
perc_of_fragment: pore_c.model.ConstrainedFloatValue