Description Details See Also Examples
It is an object to massivly simplify your coding, by having a
table of all libraries of an experiment. That contains
filepaths and info for each library in the experiment. It also tries
to guess grouping / types / pairs by the file names.
Act as a way of extension of SummarizedExperiment
by allowing
more ease to find not only counts, but rather
information about libraries, and annotation, so that more tasks are
possible. Like coverage per position in some transcript etc.
## Constructor:
Simplest way to make is to call:
create.experiment(dir)
On some folder with NGS libraries (usually bam files) and see what you get.
Some of the fields
might be needed to fill in manually. Each resulting row must be unique
(not including filepath, they are always unique), that means
if it has replicates then that must be said explicit. And all
filepaths must be unique and have files with size > 0.
Here all the columns in the experiment will be described:
name (column info): examples
library type: rna-seq, ribo-seq, CAGE etc
stage or tissue: 64cell, Shield, HEK293
replicate: 1,2,3 etc
treatment or condition: : WT (wild-type), control, target, mzdicer, starved
fraction of total: 18, 19 (TCP / RCP fractions),
or other ways to split library.
Full filepath to file
optional: 2nd filepath or info, only used if paired files
Special rules:
Supported:
Single/paired end bam, bed, wig, ofst + compressions of these
The reverse column of the experiments says "paired-end" if bam file.
If a pair of wig files, forward and reverse strand, reverse is filepath
to '-' strand wig file.
Paired forward / reverse wig files, must have same name except
_forward / _reverse in name
Paired end bam, when creating experiment, set pairedEndBam = c(T, T, T, F).
For 3 paired end libraries, then one single end.
Naming:
Will try to guess naming for tissues / stages, replicates etc.
If it finds more than one hit for one file, it will not guess.
Always check that it guessed correctly.
Other ORFik_experiment:
ORFik.template.experiment()
,
bamVarName()
,
create.experiment()
,
filepath()
,
libraryTypes()
,
organism.df()
,
outputLibs()
,
read.experiment()
,
save.experiment()
,
validateExperiments()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | ## To see an internal ORFik example
df <- ORFik.template.experiment()
## See libraries in experiment
df
## See organism of experiment
organism.df(df)
## See file paths in experiment
filepath(df, "default")
## Output objects in R, to .GlobalEnv
#outputLibs(df)
## This is how to make it:
## Not run:
library(ORFik)
# 1. Update path to experiment data directory (bam, bed, wig files etc)
exp_dir = "/data/processed_data/RNA-seq/Lee_zebrafish_2013/aligned/"
# 2. Set a short character name for experiment, (Lee et al 2013 -> Lee13, etc)
exper_name = "Lee13"
# 3. Create a template experiment (gtf and fasta genome)
temp <- create.experiment(exp_dir, exper_name, saveDir = NULL,
txdb = "/data/references/Zv9_zebrafish/Danio_rerio.Zv9.79.gtf",
fa = "/data/references/Zv9_zebrafish/Danio_rerio.Zv9.fa",
organism = "Homo sapiens")
# 4. Make sure each row(sample) is unique and correct
# You will get a view open now, check the data.frame that it is correct:
# library type (RNA-seq, Ribo-seq), stage, rep, condition, fraction.
# Let say it did not figure out it is RNA-seq, then we do:"
temp[5:6, 1] <- "RNA" # [row 5 and 6, col 1] are library types
# You can also do this in your spread sheet program (excel, libre office)
# Now save new version, if you did not use spread sheet.
saveName <- paste0("/data/processed_data/experiment_tables_for_R/",
exper_name,".csv")
save.experiment(temp, saveName)
# 5. Load experiment, this will validate that you actually made it correct
df <- read.experiment(saveName)
# Set experiment name not to be assigned in R variable names
df@expInVarName <- FALSE
df
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.