Skip to content

Instantly share code, notes, and snippets.

View simon-anders's full-sized avatar

Simon Anders simon-anders

  • University of Heidelberg
  • Heidelberg, Germany
View GitHub Profile
import gzip, random
# Load FASTQ file for Chromosome 10 from GRCm38
with gzip.open("data/Mus_musculus.GRCm38.dna.chromosome.10.fa.gz") as f:
firstline = f.readline()
assert firstline.startswith(b'>')
chrom_seq = b"".join(l.rstrip() for l in f)
# This here is the file from papagei:mnt/raid/scnmt_data/CpG_filtered
cpg = scipy.sparse.load_npz( "data/CpG_10.npz" ).tocoo()
## Beispiel für Plot-Größe
Tidyverse laden:
```{r}
library( tidyverse )
```
Wir benutzen `mtcars`, eine Standard-Beispiel-Tabelle von R mit technischen Daten
für (recht alte) Autos:
@simon-anders
simon-anders / pca.R
Created April 28, 2021 14:24
Imputation via PCA
library( irlba )
m <- 10000 # nbr of features (rows)
n <- 5000 # nbr of cells (colums)
r <- 5 # nbr of latent components
## The true latent values
# True importance of latent factors
true_importance <- c( 1, .8, .4, .2, .1 )
# Wir haben 300 Stämme
m <- 300
# Die wahre mittlere Floureszenz der Stämme ist
true_mu <- exp( rnorm( m, 3, 2) )
# Die mittlere Hintergrund-Floureszenz ist
true_bg <- 10
# Die Hintergrund-Floureszenz schwankt mit einer Standardabweichung von
# So zieht man 10000 Werte mit Mittelwert 178 und Standardabweichung 7:
rnorm( 10000, 178, 7 ) -> x
# Und so plotted man das Histogramm aller Werte in x
library( tidyverse)
tibble(x) %>% ggplot + geom_histogram(aes(x))
library( jrc )
library( rlc )
myfun <- function(x) { print( paste( "user clicked on", x ) ) }
rlc::openPage(useViewer=FALSE)
jrc::allowFunctions( "myfun" )
genes <- c( "gene1", "gene2", "gene3" )

In order to estimate transduction efficiency from sc-RNA-Seq data, we use the following model: We assume that a non-transduced cell expresses NeoR such that an expected fraction $\mu^\text{R}$ of its UMIs maps to this gene. For each individual cell $j$, the actual expression strength of the gene varies around this expectation with some coefficient of variation, which we denote $\alpha^R$.

@simon-anders
simon-anders / seegene_curves.R
Created July 17, 2020 13:28
seegene_curves.R
library( tidyverse )
readRDS("~/sds/sd17l002/p/covidTests/data/allCurvesSeegene.rds") %>% ungroup() -> tbl
readRDS("~/sds/sd17l002/p/covidTests/data/testResults.rds" ) -> testres
tbl %>% pull( plateId ) %>% unique()
c( "FAM" = "E", "HEX" = "IC", "Cal Red 610" = "R", "Quasar 670" = "N" ) ->flph2gene
tbl %>%
library( tidyverse )
library( ggplot2 )
jhu_url <- paste("https://raw.githubusercontent.com/CSSEGISandData/",
"COVID-19/master/csse_covid_19_data/", "csse_covid_19_time_series/",
"time_series_19-covid-Confirmed.csv", sep = "")
seq( 0, by=.211, length.out=300 ) -> a
hsv( a - floor(a), 1, 1 ) -> palette
1. In der Vorlesung haben wir uns den GO-Term "inflammatory response" angesehen und festgestellt, dass (wie zu erwarten war) viele der Gene, die diesem Term zugeordnet sind, in den Psoriasis-Proben deutlich stärker exprimiert sind als in den normalen Vergleich-Proben.
a) Wie lautet die GO-Term-ID zum Term "inflammatory response"? Dese Informationen finden Sie auf der Webseite des Gene-Ontology-KOnsortiums.
b) Welche Gene sind im Menschen dieser GO-Kategorie zugeordnet? FInden Sie (zB auf der Ensembl-Website) eine Liste der Ensembl-Gen-IDs und Gen-Namen.
c) Erstellen Sie einen MA-Plot, d.h. einen Scatter-Plot mit einem Punkt für jedes Gen, auf der x-Achse die durchschnittliche Expressionsstärke des Gens, gemittelt über alle Proben, und auf der y-Achse das Verhältnis der MIttelwerte für Psoriasis geteilt durch normal. (KEVIN: Setz bitte einen Link zur Tabelle mit den beiden Gruppen-Mittelwerten.) Färben Sie in diesem Plot die Gene in einer anderen Farbe ein, die der GO-Kategorie "inflammatory response" zugeo