--- /srv/reproducible-results/rbuild-debian/r-b-build.uRSaf72F/b1/r-bioc-genomicfeatures_1.50.4+dfsg-1_arm64.changes +++ /srv/reproducible-results/rbuild-debian/r-b-build.uRSaf72F/b2/r-bioc-genomicfeatures_1.50.4+dfsg-1_arm64.changes ├── Files │ @@ -1,2 +1,2 @@ │ │ - 7b5cb3a7ceeef1c32da85c43ae5730b9 1645056 gnu-r optional r-bioc-genomicfeatures_1.50.4+dfsg-1_all.deb │ + 5004ff2afcda848f77599ad1ff62e021 1645588 gnu-r optional r-bioc-genomicfeatures_1.50.4+dfsg-1_all.deb ├── r-bioc-genomicfeatures_1.50.4+dfsg-1_all.deb │ ├── file list │ │ @@ -1,3 +1,3 @@ │ │ -rw-r--r-- 0 0 0 4 2023-01-30 12:34:26.000000 debian-binary │ │ -rw-r--r-- 0 0 0 2996 2023-01-30 12:34:26.000000 control.tar.xz │ │ --rw-r--r-- 0 0 0 1641868 2023-01-30 12:34:26.000000 data.tar.xz │ │ +-rw-r--r-- 0 0 0 1642400 2023-01-30 12:34:26.000000 data.tar.xz │ ├── control.tar.xz │ │ ├── control.tar │ │ │ ├── ./control │ │ │ │ @@ -1,12 +1,12 @@ │ │ │ │ Package: r-bioc-genomicfeatures │ │ │ │ Version: 1.50.4+dfsg-1 │ │ │ │ Architecture: all │ │ │ │ Maintainer: Debian R Packages Maintainers │ │ │ │ -Installed-Size: 4515 │ │ │ │ +Installed-Size: 4514 │ │ │ │ Depends: r-base-core (>= 4.2.2.20221110-2), r-api-4.0, r-api-bioc-3.16, r-bioc-biocgenerics (>= 0.1.0), r-bioc-s4vectors (>= 0.17.29), r-bioc-iranges (>= 2.13.23), r-bioc-genomeinfodb (>= 1.34.7), r-bioc-genomicranges (>= 1.31.17), r-bioc-annotationdbi (>= 1.41.4), r-cran-dbi, r-cran-rsqlite (>= 2.0), r-cran-rcurl, r-bioc-xvector (>= 0.19.7), r-bioc-biostrings (>= 2.47.6), r-bioc-biocio, r-bioc-rtracklayer (>= 1.51.5), r-bioc-biomart (>= 2.17.1), r-bioc-biobase (>= 2.15.1) │ │ │ │ Suggests: r-bioc-org.hs.eg.db, r-bioc-bsgenome, r-bioc-rsamtools, r-bioc-genomicalignments (>= 1.15.7), r-bioc-ensembldb, r-bioc-annotationfilter, r-cran-runit, r-bioc-biocstyle, r-cran-knitr, r-cran-markdown │ │ │ │ Section: gnu-r │ │ │ │ Priority: optional │ │ │ │ Homepage: https://bioconductor.org/packages/GenomicFeatures/ │ │ │ │ Description: GNU R tools for making and manipulating transcript centric annotations │ │ │ │ A set of tools and methods for making and manipulating transcript │ │ │ ├── ./md5sums │ │ │ │ ├── ./md5sums │ │ │ │ │┄ Files differ │ ├── data.tar.xz │ │ ├── data.tar │ │ │ ├── file list │ │ │ │ @@ -20,16 +20,16 @@ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/R/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1058 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/R/GenomicFeatures │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1156135 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/R/GenomicFeatures.rdb │ │ │ │ -rw-r--r-- 0 root (0) root (0) 10017 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/R/GenomicFeatures.rdx │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 4269 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.R │ │ │ │ -rw-r--r-- 0 root (0) root (0) 16695 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.Rmd │ │ │ │ --rw-r--r-- 0 root (0) root (0) 29200 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.html │ │ │ │ --rw-r--r-- 0 root (0) root (0) 21505 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.md │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 29197 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.html │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 21502 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.md │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1783 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/doc/index.html │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/extdata/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 45056 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/extdata/Biomart_Ensembl_sample.sqlite │ │ │ │ -rw-r--r-- 0 root (0) root (0) 34816 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/extdata/FeatureDb.sqlite │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/extdata/GFF3_files/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 263054 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/extdata/GFF3_files/NC_011025.gff │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1760 2023-01-30 12:34:26.000000 ./usr/lib/R/site-library/GenomicFeatures/extdata/GFF3_files/TheCanonicalGene_v1.gff3 │ │ │ ├── ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.html │ │ │ │ @@ -92,15 +92,15 @@ │ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │

Making and Utilizing TxDb Objects

│ │ │ │

Marc Carlson, Patrick Aboyoun, Hervé Pagès, Seth Falcon, Martin Morgan

│ │ │ │ -

Saturday, February 08, 2025

│ │ │ │ +

Monday, January 08, 2024

│ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │

Introduction

│ │ │ │

The GenomicFeatures package retrieves and manages │ │ │ │ transcript-related features from the UCSC Genome │ │ │ │ Bioinformatics\footnote{(http://genome.ucsc.edu/)} and │ │ │ │ @@ -188,24 +188,24 @@ │ │ │ │ to the seqlevels stored in the db), then set the seqlevels to │ │ │ │ seqlevels0(txdb).

│ │ │ │
seqlevels(txdb) <- seqlevels0(txdb)
│ │ │ │  
│ │ │ │
## Error in seqlevels0(txdb): could not find function "seqlevels0"
│ │ │ │  
│ │ │ │

\begin{Exercise} Use seqlevels to set only chromsome 15 to be active. BTW, the rest of this vignette will assume you have succeeded at this. \end{Exercise} │ │ │ │ -`=f\begin{Solution}

│ │ │ │ +`/q\begin{Solution}

│ │ │ │
seqlevels(txdb) <- "chr15"
│ │ │ │  
│ │ │ │
## Error in seqlevels(txdb) <- "chr15": object 'txdb' not found
│ │ │ │  
│ │ │ │
seqlevels(txdb)
│ │ │ │  
│ │ │ │
## Error in seqlevels(txdb): could not find function "seqlevels"
│ │ │ │  
│ │ │ │ -

\end{Solution}=f`

│ │ │ │ +

\end{Solution}/q`

│ │ │ │

Retrieving data using the select method

│ │ │ │

The TxDb objects inherit from AnnotationDb │ │ │ │ objects (just as the ChipDb and OrgDb objects do). │ │ │ │ One of the implications of this relationship is that these object │ │ │ │ ought to be used in similar ways to each other. Therefore we have │ │ │ │ written supporting columns, keytypes, keys │ │ │ │ and select methods for TxDb objects.

│ │ │ │ @@ -224,25 +224,25 @@ │ │ │ │
## Error in keytypes(txdb): could not find function "keytypes"
│ │ │ │  
│ │ │ │
select(txdb, keys = keys, columns="TXNAME", keytype="GENEID")
│ │ │ │  
│ │ │ │
## Error in select(txdb, keys = keys, columns = "TXNAME", keytype = "GENEID"): could not find function "select"
│ │ │ │  
│ │ │ │

\begin{Exercise} For the genes in the example above, find the chromosome and strand information that will go with each of the transcript names. \end{Exercise} │ │ │ │ -`=f\begin{Solution}

│ │ │ │ +`/q\begin{Solution}

│ │ │ │
columns(txdb)
│ │ │ │  
│ │ │ │
## Error in columns(txdb): could not find function "columns"
│ │ │ │  
│ │ │ │
cols <- c("TXNAME", "TXSTRAND", "TXCHROM")
│ │ │ │  select(txdb, keys=keys, columns=cols, keytype="GENEID")
│ │ │ │  
│ │ │ │
## Error in select(txdb, keys = keys, columns = cols, keytype = "GENEID"): could not find function "select"
│ │ │ │  
│ │ │ │ -

\end{Solution}=f`

│ │ │ │ +

\end{Solution}/q`

│ │ │ │

Methods for returning GRanges objects

│ │ │ │

Retrieving data with select is useful, but sometimes it is more │ │ │ │ convenient to extract the result as GRanges objects. This is │ │ │ │ often the case when you are doing counting or specialized overlap │ │ │ │ operations downstream. For these use cases there is another family of │ │ │ │ methods available.

│ │ │ │

Perhaps the most common operations for a TxDb object │ │ │ │ @@ -317,15 +317,15 @@ │ │ │ │ │ │ │ │

## Error in eval(expr, envir, enclos): object 'PR' not found
│ │ │ │  
│ │ │ │

The exons and cds functions can also be used │ │ │ │ in a similar fashion to retrive genomic coordinates for exons and │ │ │ │ coding sequences.

│ │ │ │

\begin{Exercise} Use exonsto retrieve all the exons from chromosome 15. How does the length of this compare to the value returned bytranscripts? \end{Exercise} │ │ │ │ -`=f\begin{Solution}

│ │ │ │ +`/q\begin{Solution}

│ │ │ │
EX <- exons(txdb)
│ │ │ │  
│ │ │ │
## Error in exons(txdb): could not find function "exons"
│ │ │ │  
│ │ │ │
EX[1:4]
│ │ │ │  
│ │ │ │
## Error in eval(expr, envir, enclos): object 'EX' not found
│ │ │ │ @@ -334,15 +334,15 @@
│ │ │ │  
│ │ │ │
## Error in eval(expr, envir, enclos): object 'EX' not found
│ │ │ │  
│ │ │ │
length(GR)
│ │ │ │  
│ │ │ │
## Error in eval(expr, envir, enclos): object 'GR' not found
│ │ │ │  
│ │ │ │ -

\end{Solution}=f`

│ │ │ │ +

\end{Solution}/q`

│ │ │ │

Working with Grouped Features

│ │ │ │

Often one is interested in how particular genomic features relate to │ │ │ │ each other, and not just their location. For example, it might be of │ │ │ │ interest to group transcripts by gene or to group exons by transcript. │ │ │ │ Such groupings are supported by the transcriptsBy, │ │ │ │ exonsBy, and cdsBy functions.

│ │ │ │

The following call can be used to group transcripts by genes:

│ │ │ │ @@ -405,28 +405,28 @@ │ │ │ │ unique identifier for all features. In this situation, the group │ │ │ │ label will be a synthetic ID created by GenomicFeatures to │ │ │ │ keep the relations between features consistent in the database this │ │ │ │ was the case in the 2nd example. Even though the results will │ │ │ │ sometimes have to come back to you as synthetic IDs, you can still │ │ │ │ always retrieve the original IDs.

│ │ │ │

\begin{Exercise} Starting with the tx_ids that are the names of the GRList object we just made, use selectto retrieve that matching transcript names. Remember that the list used aby argument = "tx", so the list is grouped by transcript IDs. \end{Exercise} │ │ │ │ -`=f\begin{Solution}

│ │ │ │ +`/q\begin{Solution}

│ │ │ │
GRList <- exonsBy(txdb, by = "tx")
│ │ │ │  
│ │ │ │
## Error in exonsBy(txdb, by = "tx"): could not find function "exonsBy"
│ │ │ │  
│ │ │ │
tx_ids <- names(GRList)
│ │ │ │  
│ │ │ │
## Error in eval(expr, envir, enclos): object 'GRList' not found
│ │ │ │  
│ │ │ │
head(select(txdb, keys=tx_ids, columns="TXNAME", keytype="TXID"))
│ │ │ │  
│ │ │ │
## Error in select(txdb, keys = tx_ids, columns = "TXNAME", keytype = "TXID"): could not find function "select"
│ │ │ │  
│ │ │ │ -

\end{Solution}=f`

│ │ │ │ +

\end{Solution}/q`

│ │ │ │

Finally, the order of the results in a GRangesList object can │ │ │ │ vary with the way in which things were grouped. In most cases the │ │ │ │ grouped elements of the GRangesList object will be listed in │ │ │ │ the order that they occurred along the chromosome. However, when │ │ │ │ exons or CDS are grouped by transcript, they will instead be grouped │ │ │ │ according to their position along the transcript itself. This is │ │ │ │ important because alternative splicing can mean that the order along │ │ │ │ @@ -466,25 +466,25 @@ │ │ │ │

And, once these sequences have been extracted, you can translate them │ │ │ │ into proteins with translate:

│ │ │ │
suppressWarnings(translate(tx_seqs1))
│ │ │ │  
│ │ │ │
## Error in translate(tx_seqs1): could not find function "translate"
│ │ │ │  
│ │ │ │

\begin{Exercise} But of course this is not a meaningful translation, because the call to extractTranscriptSeqswill have extracted all the transcribed regions of the genome regardless of whether or not they are translated. Look at the manual page forextractTranscriptSeqs and see how you can use cdsBy to only translate only the coding regions. \end{Exercise} │ │ │ │ -`=f\begin{Solution}

│ │ │ │ +`/q\begin{Solution}

│ │ │ │
cds_seqs <- extractTranscriptSeqs(Hsapiens,
│ │ │ │                                    cdsBy(txdb, by="tx", use.names=TRUE))
│ │ │ │  
│ │ │ │
## Error in extractTranscriptSeqs(Hsapiens, cdsBy(txdb, by = "tx", use.names = TRUE)): could not find function "extractTranscriptSeqs"
│ │ │ │  
│ │ │ │
translate(cds_seqs)
│ │ │ │  
│ │ │ │
## Error in translate(cds_seqs): could not find function "translate"
│ │ │ │  
│ │ │ │ -

\end{Solution}=f`

│ │ │ │ +

\end{Solution}/q`

│ │ │ │

Creating New TxDb Objects or Packages

│ │ │ │

The GenomicFeatures package provides functions to create │ │ │ │ TxDb objects based on data downloaded from UCSC │ │ │ │ Genome Bioinformatics or BioMart. The following subsections │ │ │ │ demonstrate the use of these functions. There is also support for │ │ │ │ creating TxDb objects from custom data sources using │ │ │ │ makeTxDb; see the help page for this function for │ │ │ │ ├── html2text {} │ │ │ │ │ @@ -1,13 +1,13 @@ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ****** Making and Utilizing TxDb Objects ****** │ │ │ │ │ ***** Marc Carlson, Patrick Aboyoun, Hervé Pagès, Seth Falcon, Martin Morgan │ │ │ │ │ ***** │ │ │ │ │ -**** Saturday, February 08, 2025 **** │ │ │ │ │ +**** Monday, January 08, 2024 **** │ │ │ │ │ ***** Introduction ***** │ │ │ │ │ The GenomicFeatures package retrieves and manages transcript-related features │ │ │ │ │ from the UCSC Genome Bioinformatics\footnote{(http://genome.ucsc.edu/)} and │ │ │ │ │ BioMart\footnote{(http://www.biomart.org/)} data resources. The package is │ │ │ │ │ useful for ChIP-chip, ChIP-seq, and RNA-seq analyses. │ │ │ │ │ suppressPackageStartupMessages(library('GenomicFeatures')) │ │ │ │ │ ## Error in library("GenomicFeatures"): there is no package called │ │ │ │ │ @@ -69,20 +69,20 @@ │ │ │ │ │ would be consulted when you call the various retrieval methods… If you need │ │ │ │ │ to reset back to the original seqlevels (i.e. to the seqlevels stored in the │ │ │ │ │ db), then set the seqlevels to seqlevels0(txdb). │ │ │ │ │ seqlevels(txdb) <- seqlevels0(txdb) │ │ │ │ │ ## Error in seqlevels0(txdb): could not find function "seqlevels0" │ │ │ │ │ \begin{Exercise} Use │ │ │ │ │ seqlevelsto set only chromsome 15 to be active. BTW, the rest of this vignette │ │ │ │ │ -will assume you have succeeded at this. \end{Exercise} `=f\begin{Solution} │ │ │ │ │ +will assume you have succeeded at this. \end{Exercise} `/q\begin{Solution} │ │ │ │ │ seqlevels(txdb) <- "chr15" │ │ │ │ │ ## Error in seqlevels(txdb) <- "chr15": object 'txdb' not found │ │ │ │ │ seqlevels(txdb) │ │ │ │ │ ## Error in seqlevels(txdb): could not find function "seqlevels" │ │ │ │ │ -\end{Solution}=f` │ │ │ │ │ +\end{Solution}/q` │ │ │ │ │ **** Retrieving data using the select method **** │ │ │ │ │ The TxDb objects inherit from AnnotationDb objects (just as the ChipDb and │ │ │ │ │ OrgDb objects do). One of the implications of this relationship is that these │ │ │ │ │ object ought to be used in similar ways to each other. Therefore we have │ │ │ │ │ written supporting columns, keytypes, keys and select methods for TxDb objects. │ │ │ │ │ These methods can be a useful way of extracting data from a TxDb object. And │ │ │ │ │ they are used in the same way that they would be used to extract information │ │ │ │ │ @@ -94,22 +94,22 @@ │ │ │ │ │ keytypes(txdb) │ │ │ │ │ ## Error in keytypes(txdb): could not find function "keytypes" │ │ │ │ │ select(txdb, keys = keys, columns="TXNAME", keytype="GENEID") │ │ │ │ │ ## Error in select(txdb, keys = keys, columns = "TXNAME", keytype = "GENEID"): │ │ │ │ │ could not find function "select" │ │ │ │ │ \begin{Exercise} For the genes in the example above, find the chromosome and │ │ │ │ │ strand information that will go with each of the transcript names. \end │ │ │ │ │ -{Exercise} `=f\begin{Solution} │ │ │ │ │ +{Exercise} `/q\begin{Solution} │ │ │ │ │ columns(txdb) │ │ │ │ │ ## Error in columns(txdb): could not find function "columns" │ │ │ │ │ cols <- c("TXNAME", "TXSTRAND", "TXCHROM") │ │ │ │ │ select(txdb, keys=keys, columns=cols, keytype="GENEID") │ │ │ │ │ ## Error in select(txdb, keys = keys, columns = cols, keytype = "GENEID"): │ │ │ │ │ could not find function "select" │ │ │ │ │ -\end{Solution}=f` │ │ │ │ │ +\end{Solution}/q` │ │ │ │ │ **** Methods for returning GRanges objects **** │ │ │ │ │ Retrieving data with select is useful, but sometimes it is more convenient to │ │ │ │ │ extract the result as GRanges objects. This is often the case when you are │ │ │ │ │ doing counting or specialized overlap operations downstream. For these use │ │ │ │ │ cases there is another family of methods available. │ │ │ │ │ Perhaps the most common operations for a TxDb object is to retrieve the genomic │ │ │ │ │ coordinates or ranges for exons, transcripts or coding sequences. The functions │ │ │ │ │ @@ -156,24 +156,24 @@ │ │ │ │ │ function "promoters" │ │ │ │ │ PR │ │ │ │ │ ## Error in eval(expr, envir, enclos): object 'PR' not found │ │ │ │ │ The exons and cds functions can also be used in a similar fashion to retrive │ │ │ │ │ genomic coordinates for exons and coding sequences. │ │ │ │ │ \begin{Exercise} Use │ │ │ │ │ exonsto retrieve all the exons from chromosome 15. How does the length of this │ │ │ │ │ -compare to the value returned bytranscripts? \end{Exercise} `=f\begin{Solution} │ │ │ │ │ +compare to the value returned bytranscripts? \end{Exercise} `/q\begin{Solution} │ │ │ │ │ EX <- exons(txdb) │ │ │ │ │ ## Error in exons(txdb): could not find function "exons" │ │ │ │ │ EX[1:4] │ │ │ │ │ ## Error in eval(expr, envir, enclos): object 'EX' not found │ │ │ │ │ length(EX) │ │ │ │ │ ## Error in eval(expr, envir, enclos): object 'EX' not found │ │ │ │ │ length(GR) │ │ │ │ │ ## Error in eval(expr, envir, enclos): object 'GR' not found │ │ │ │ │ -\end{Solution}=f` │ │ │ │ │ +\end{Solution}/q` │ │ │ │ │ **** Working with Grouped Features **** │ │ │ │ │ Often one is interested in how particular genomic features relate to each │ │ │ │ │ other, and not just their location. For example, it might be of interest to │ │ │ │ │ group transcripts by gene or to group exons by transcript. Such groupings are │ │ │ │ │ supported by the transcriptsBy, exonsBy, and cdsBy functions. │ │ │ │ │ The following call can be used to group transcripts by genes: │ │ │ │ │ GRList <- transcriptsBy(txdb, by = "gene") │ │ │ │ │ @@ -216,24 +216,24 @@ │ │ │ │ │ the group label will be a synthetic ID created by GenomicFeatures to keep the │ │ │ │ │ relations between features consistent in the database this was the case in the │ │ │ │ │ 2nd example. Even though the results will sometimes have to come back to you as │ │ │ │ │ synthetic IDs, you can still always retrieve the original IDs. │ │ │ │ │ \begin{Exercise} Starting with the tx_ids that are the names of the GRList │ │ │ │ │ object we just made, use │ │ │ │ │ selectto retrieve that matching transcript names. Remember that the list used │ │ │ │ │ -abyargument = "tx", so the list is grouped by transcript IDs. \end{Exercise} │ │ │ │ │ -`=f\begin{Solution} │ │ │ │ │ +abyargument = "tx", so the list is grouped by transcript IDs. \end{Exercise} `/ │ │ │ │ │ +q\begin{Solution} │ │ │ │ │ GRList <- exonsBy(txdb, by = "tx") │ │ │ │ │ ## Error in exonsBy(txdb, by = "tx"): could not find function "exonsBy" │ │ │ │ │ tx_ids <- names(GRList) │ │ │ │ │ ## Error in eval(expr, envir, enclos): object 'GRList' not found │ │ │ │ │ head(select(txdb, keys=tx_ids, columns="TXNAME", keytype="TXID")) │ │ │ │ │ ## Error in select(txdb, keys = tx_ids, columns = "TXNAME", keytype = "TXID"): │ │ │ │ │ could not find function "select" │ │ │ │ │ -\end{Solution}=f` │ │ │ │ │ +\end{Solution}/q` │ │ │ │ │ Finally, the order of the results in a GRangesList object can vary with the way │ │ │ │ │ in which things were grouped. In most cases the grouped elements of the │ │ │ │ │ GRangesList object will be listed in the order that they occurred along the │ │ │ │ │ chromosome. However, when exons or CDS are grouped by transcript, they will │ │ │ │ │ instead be grouped according to their position along the transcript itself. │ │ │ │ │ This is important because alternative splicing can mean that the order along │ │ │ │ │ the transcript can be different from that along the chromosome. │ │ │ │ │ @@ -268,22 +268,22 @@ │ │ │ │ │ suppressWarnings(translate(tx_seqs1)) │ │ │ │ │ ## Error in translate(tx_seqs1): could not find function "translate" │ │ │ │ │ \begin{Exercise} But of course this is not a meaningful translation, because │ │ │ │ │ the call to │ │ │ │ │ extractTranscriptSeqswill have extracted all the transcribed regions of the │ │ │ │ │ genome regardless of whether or not they are translated. Look at the manual │ │ │ │ │ page forextractTranscriptSeqsand see how you can use cdsBy to only translate │ │ │ │ │ -only the coding regions. \end{Exercise} `=f\begin{Solution} │ │ │ │ │ +only the coding regions. \end{Exercise} `/q\begin{Solution} │ │ │ │ │ cds_seqs <- extractTranscriptSeqs(Hsapiens, │ │ │ │ │ cdsBy(txdb, by="tx", use.names=TRUE)) │ │ │ │ │ ## Error in extractTranscriptSeqs(Hsapiens, cdsBy(txdb, by = "tx", use.names = │ │ │ │ │ TRUE)): could not find function "extractTranscriptSeqs" │ │ │ │ │ translate(cds_seqs) │ │ │ │ │ ## Error in translate(cds_seqs): could not find function "translate" │ │ │ │ │ -\end{Solution}=f` │ │ │ │ │ +\end{Solution}/q` │ │ │ │ │ ***** Creating New TxDb Objects or Packages ***** │ │ │ │ │ The GenomicFeatures package provides functions to create TxDb objects based on │ │ │ │ │ data downloaded from UCSC Genome Bioinformatics or BioMart. The following │ │ │ │ │ subsections demonstrate the use of these functions. There is also support for │ │ │ │ │ creating TxDb objects from custom data sources using makeTxDb; see the help │ │ │ │ │ page for this function for details. │ │ │ │ │ **** Using makeTxDbFromUCSC **** │ │ │ ├── ./usr/lib/R/site-library/GenomicFeatures/doc/GenomicFeatures.md │ │ │ │ @@ -1,11 +1,11 @@ │ │ │ │ --- │ │ │ │ title: "Making and Utilizing TxDb Objects" │ │ │ │ author: "Marc Carlson, Patrick Aboyoun, Hervé Pagès, Seth Falcon, Martin Morgan" │ │ │ │ -date: "Saturday, February 08, 2025" │ │ │ │ +date: "Monday, January 08, 2024" │ │ │ │ package: GenomicFeatures │ │ │ │ output: │ │ │ │ BiocStyle::html_document: │ │ │ │ df_print: paged │ │ │ │ toc_float: true │ │ │ │ vignette: > │ │ │ │ %\VignetteIndexEntry{Making and Utilizing TxDb Objects}