Annotate CLIP-seq binding sites to genomic features including 3'UTR, 5'UTR, CDS, introns, and ncRNAs. Use when characterizing where an RBP binds in transcripts.
Reference examples tested with: bedtools 2.31+, pandas 2.2+
Before using code patterns, verify installed versions match. If versions differ:
pip show <package> then help(module.function) to check signaturespackageVersion('<pkg>') then ?function_name to verify parameters<tool> --version then <tool> --help to confirm flagsIf code throws ImportError, AttributeError, or TypeError, introspect the installed package and adapt the example to match the actual API rather than retrying.
"Annotate where my RBP binds in transcripts" → Map CLIP-seq peaks to genomic features (3'UTR, 5'UTR, CDS, introns, ncRNAs) to characterize RNA-binding protein target regions.
ChIPseeker::annotatePeak() with transcript annotation databasesbedtools intersect with gene model BED filesGoal: Classify CLIP-seq binding sites by genomic feature (3'UTR, 5'UTR, CDS, intron).
Approach: Load peaks and a TxDb transcript database, annotate with annotatePeak, and visualize the feature distribution with a pie chart.
library(ChIPseeker)
library(TxDb.Hsapiens.UCSC.hg38.knownGene)
txdb <- TxDb.Hsapiens.UCSC.hg38.knownGene
peaks <- readPeakFile('peaks.bed')
anno <- annotatePeak(peaks, TxDb = txdb)
plotAnnoPie(anno)
# Annotate to UTRs
bedtools intersect -a peaks.bed -b 3utr.bed -wa -wb > peaks_3utr.bed
import pandas as pd
def annotate_peaks(peaks_bed, annotation_gtf):
'''Annotate peaks to genomic features'''
# Load peaks and annotations
# Intersect and categorize
pass