Package: plyranges 1.33.0

Michael Love

plyranges: A fluent interface for manipulating GenomicRanges

A dplyr-like interface for interacting with the common Bioconductor classes Ranges and GenomicRanges. By providing a grammatical and consistent way of manipulating these classes their accessiblity for new Bioconductor users is hopefully increased.

Authors:Stuart Lee [aut], Michael Lawrence [aut, ctb], Dianne Cook [aut, ctb], Spencer Nystrom [ctb], Pierre-Paul Axisa [ctb], Michael Love [ctb, cre]

plyranges_1.33.0.tar.gz
plyranges_1.33.0.zip(r-4.7)plyranges_1.33.0.zip(r-4.6)plyranges_1.33.0.zip(r-4.5)
plyranges_1.33.0.tgz(r-4.6-any)plyranges_1.33.0.tgz(r-4.5-any)
plyranges_1.33.0.tar.gz(r-4.7-any)plyranges_1.33.0.tar.gz(r-4.6-any)
plyranges_1.33.0.tgz(r-4.6-emscripten)
manual.pdf |manual.html
card.svg |card.png
plyranges/json (API)
NEWS

# Install 'plyranges' in R:
install.packages('plyranges', repos = c('https://bioc.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/tidyomics/plyranges/issues

Pkgdown/docs site:https://tidyomics.github.io

On BioConductor:plyranges-1.33.0(bioc 3.24)plyranges-1.32.0(bioc 3.23)

infrastructuredatarepresentationworkflowstepcoveragebioconductordata-analysisdplyrgenomic-rangesgenomicstidy-data

13.33 score 154 stars 20 packages 2.5k scripts 2.1k downloads 8 mentions 130 exports 62 dependencies

Last updated from:6654695a92. Checks:1 WARNING, 9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
bioc-checksWARNING264
linux-devel-x86_64OK519
source / vignettesOK385
linux-release-x86_64OK475
macos-release-arm64OK288
macos-oldrel-arm64OK233
windows-develOK379
windows-releaseOK355
windows-oldrelOK268
wasm-releaseOK215

Exports:%>%%intersect%%setdiff%%union%add_nearest_distanceadd_nearest_distance_downstreamadd_nearest_distance_leftadd_nearest_distance_rightadd_nearest_distance_upstreamanchoranchor_3panchor_5panchor_centeranchor_centreanchor_endanchor_startas_grangesas_irangesas_rangesbetweenbind_rangeschop_by_gapschop_by_intronscomplement_rangescomplement_ranges_directedcompute_coveragecount_overlapscount_overlaps_directedcount_overlaps_withincount_overlaps_within_directeddisjoin_rangesdisjoin_ranges_directedexpand_rangesfilter_by_non_overlapsfilter_by_non_overlaps_directedfilter_by_overlapsfilter_by_overlaps_directedfind_overlapsfind_overlaps_directedfind_overlaps_withinfind_overlaps_within_directedflank_downstreamflank_leftflank_rightflank_upstreamgenome_infoget_genome_infogroup_by_overlapsid_to_columnintersect_rangesintersect_ranges_directedinterweavejoin_followjoin_follow_leftjoin_follow_upstreamjoin_mcols_innerjoin_mcols_leftjoin_nearestjoin_nearest_downstreamjoin_nearest_leftjoin_nearest_rightjoin_nearest_upstreamjoin_overlap_innerjoin_overlap_inner_directedjoin_overlap_inner_withinjoin_overlap_inner_within_directedjoin_overlap_intersectjoin_overlap_intersect_directedjoin_overlap_intersect_withinjoin_overlap_intersect_within_directedjoin_overlap_leftjoin_overlap_left_directedjoin_overlap_left_withinjoin_overlap_left_within_directedjoin_overlap_selfjoin_overlap_self_directedjoin_overlap_self_withinjoin_overlap_self_within_directedjoin_precedejoin_precede_downstreamjoin_precede_rightnn_distinctnames_to_columnoverscope_rangespair_followpair_nearestpair_overlapspair_precederead_bamread_bedread_bed_graphread_bigwigread_gffread_gff1read_gff2read_gff3read_narrowpeaksread_wigreduce_rangesreduce_ranges_directedremove_namesset_endset_genome_infoset_seqnamesset_startset_strandset_widthsetdiff_rangessetdiff_ranges_directedshift_downstreamshift_leftshift_rightshift_upstreamslide_rangesspanstretchtile_rangesunanchorunion_rangesunion_ranges_directedwrite_bedwrite_bed_graphwrite_bigwigwrite_gffwrite_gff1write_gff2write_gff3write_narrowpeakswrite_wig

Dependencies:abindaskpassBHBiobaseBiocBaseUtilsBiocGenericsBiocIOBiocParallelBiostringsbitopscigarilloclicodetoolscpp11crayoncurlDelayedArraydplyrformatRfutile.loggerfutile.optionsgenericsGenomicAlignmentsGenomicRangesgluehttrIRangesjsonlitelambda.rlatticelifecyclemagrittrMatrixMatrixGenericsmatrixStatsmimeopensslpillarpkgconfigR6RCurlrestfulrRhtslibrjsonrlangRsamtoolsrtracklayerS4ArraysS4VectorsSeqinfosnowSparseArraySummarizedExperimentsystibbletidyselectutf8vctrswithrXMLXVectoryaml

Additional examples of plyranges

Rendered frommore-examples.Rmdusingknitr::rmarkdownon May 30 2026.

Last update: 2026-03-15
Started: 2026-03-15

Getting started with the plyranges package

Rendered froman-introduction.Rmdusingknitr::rmarkdownon May 30 2026.

Last update: 2026-03-15
Started: 2018-01-10

Readme and manuals

Help Manual

Help pageTopics
plyranges: a grammar of genomic data manipulationplyranges-package plyranges
Row-wise set operations on Ranges objects%intersect% %setdiff% %union% between span
Add distance to nearest neighbours between two Ranges objectsadd_nearest_distance add_nearest_distance_downstream add_nearest_distance_left add_nearest_distance_right add_nearest_distance_upstream
Anchored Ranges objectsanchor anchor_3p anchor_5p anchor_center anchor_centre anchor_end anchor_start unanchor
Sort a Ranges objectarrange.Ranges
Construct a I/GRanges object from a tibble or data.frameas_granges as_iranges
Coerce an Rle or RleList object to Rangesas_ranges
Combine Ranges by concatentating them togetherbind_ranges
Group a GRanges object by introns or gapschop_by_gaps chop_by_introns
Compute coverage over a Ranges objectcompute_coverage
Count the number of overlaps between two Ranges objectscount_overlaps count_overlaps.GenomicRanges count_overlaps.IntegerRanges count_overlaps_directed count_overlaps_directed.GenomicRanges count_overlaps_within count_overlaps_within.GenomicRanges count_overlaps_within.IntegerRanges count_overlaps_within_directed count_overlaps_within_directed.GenomicRanges
DeferredGenomiRanges objectsDeferredGenomicRanges-class
Disjoin then aggregate a Ranges objectdisjoin_ranges disjoin_ranges_directed
Expand list-columns in a Ranges objectexpand_ranges
An abstract class to represent operations performed over a fileBamFileOperator-class FileOperator-class
Filter by overlapping/non-overlapping rangesfilter_by_non_overlaps filter_by_non_overlaps_directed filter_by_overlaps filter_by_overlaps_directed
Subset a 'Ranges' objectfilter-ranges filter.Ranges
Find overlap between two Rangesfind_overlaps find_overlaps.GenomicRanges find_overlaps.IntegerRanges find_overlaps_directed find_overlaps_directed.GenomicRanges find_overlaps_within find_overlaps_within.GenomicRanges find_overlaps_within.IntegerRanges find_overlaps_within_directed find_overlaps_within_directed.GenomicRanges group_by_overlaps group_by_overlaps.GenomicRanges group_by_overlaps.IntegerRanges
Generate flanking regionsflank_downstream flank_left flank_right flank_upstream
Group a Ranges by one or more variablesGroupedGenomicRanges-class GroupedIntegerRanges-class groups.GroupedGenomicRanges groups.GroupedIntegerRanges group_by-ranges group_by.GenomicRanges ungroup.GroupedGenomicRanges
Vector-wise Range set-operationscomplement_ranges complement_ranges_directed intersect_ranges intersect_ranges_directed setdiff_ranges setdiff_ranges_directed union_ranges union_ranges_directed
Interweave a pair of Ranges objects togetherinterweave
Find following Rangesjoin_follow join_follow_left join_follow_upstream
Join data by metadata columnsjoin_mcols_inner join_mcols_left
Find nearest neighbours between two Ranges objectsjoin_nearest join_nearest_downstream join_nearest_left join_nearest_right join_nearest_upstream
Join by overlapping Rangesjoin_overlap_inner join_overlap_inner_directed join_overlap_inner_within join_overlap_inner_within_directed join_overlap_intersect join_overlap_intersect_directed join_overlap_intersect_within join_overlap_intersect_within_directed join_overlap_left join_overlap_left_directed join_overlap_left_within join_overlap_left_within_directed
Find overlaps within a Ranges objectjoin_overlap_self join_overlap_self_directed join_overlap_self_within join_overlap_self_within_directed
Find preceding Rangesjoin_precede join_precede_downstream join_precede_right
Modify a Ranges objectmutate.Ranges
Compute the number of ranges in each group.n
Compute the number of distinct unique values in a vector or Listn_distinct
Create an overscoped environment from a Ranges objectoverscope_ranges
Pair together two ranges objectspair_follow pair_nearest pair_overlaps pair_precede
Extract a single column from a Ranges object as a vectorpull-ranges pull.Ranges
Construct annotation informationgenome_info get_genome_info ranges-info set_genome_info
Read a BAM fileread_bam
Read a BED or BEDGraph fileread_bed read_bed_graph read_narrowpeaks
Read a BigWig fileread_bigwig
Read a GFF/GTF/GVT fileread_gff read_gff1 read_gff2 read_gff3
Read a WIG fileread_wig
Reduce then aggregate a Ranges objectreduce_ranges reduce_ranges_directed
Tools for working with named Rangesid_to_column names_to_column remove_names
Select metadata columns of the Ranges object by name or positionselect.Ranges
Functional setters for Ranges objectsset_end set_seqnames set_start set_strand set_width
Shift all coordinates in a genomic interval left or right, upstream or downstreamshift_downstream shift_left shift_right shift_upstream
Choose ranges by their positionslice.GroupedGenomicRanges slice.GroupedIntegerRanges slice.Ranges slice_head.GroupedGenomicRanges slice_head.GroupedIntegerRanges slice_head.Ranges slice_max.GroupedGenomicRanges slice_max.GroupedIntegerRanges slice_max.Ranges slice_min.GroupedGenomicRanges slice_min.GroupedIntegerRanges slice_min.Ranges slice_sample.GroupedGenomicRanges slice_sample.GroupedIntegerRanges slice_sample.Ranges slice_tail.GroupedGenomicRanges slice_tail.GroupedIntegerRanges slice_tail.Ranges
Stretch a genomic intervalstretch
Reduce multiple values in a Ranges down to a single valuesummarise.Ranges
Slide or tile over a Ranges objectslide_ranges tile_ranges
Write a BED or BEDGraph filewrite_bed write_bed_graph write_narrowpeaks
Write a BigWig filewrite_bigwig
Write a GFF(123) filewrite_gff write_gff1 write_gff2 write_gff3
Write a WIG filewrite_wig