Skip to content

Commit 273c2b9

Browse files
Merge pull request #46 from igemsoftware2020/finalChanges
Fixed all text, added how to section, added link to MultiStress Explo…
2 parents 5d04021 + 9f47178 commit 273c2b9

File tree

13 files changed

+286
-109
lines changed

13 files changed

+286
-109
lines changed

public/images/CSU.png

8.44 KB
Loading

public/images/astrobio-screen.png

-632 KB
Loading

public/images/twistbiosice.png

49.1 KB
Loading

public/stylesheets/style.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,3 +282,7 @@ td.x {
282282
td.y {
283283
color: red;
284284
}
285+
286+
.redcolor a:link{
287+
color: red;
288+
}

scripts/R/DEA/GSE147272.R

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
#License
2+
3+
# © Copyright 2020 iGEM Concordia, Maher Hassanain, Benjamin Clark, Hajar Mouddene, Grecia Orlano
4+
# This file is part of AstroBio.
5+
# AstroBio is free software: you can redistribute it and/or modify
6+
# it under the terms of the GNU General Public License as published by
7+
# the Free Software Foundation, either version 3 of the License, or any later version.
8+
# AstroBio is distributed in the hope that it will be useful,
9+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
# GNU General Public License for more details.
12+
# You should have received a copy of the GNU General Public License
13+
# along with AstroBio. If not, see <https://www.gnu.org/licenses/>.
14+
115
library(edgeR)
216
library(dplyr)
317

@@ -16,8 +30,8 @@ d0 <- calcNormFactors(d0)
1630
#filtering low expressed genes
1731
cutoff <- 1
1832
drop <- which(apply(cpm(d0), 1, max) < cutoff)
19-
d <- d0[-drop,]
20-
dim(d)
33+
d <- d0[-drop,]
34+
dim(d)
2135

2236
#Setting up factor names
2337
gravity <- append(rep("MG", 4), rep("NG",4))
@@ -40,14 +54,14 @@ fit2 <- eBayes(fit2)
4054
tT.exp <- topTable(fit2, n = Inf, adjust.method = "fdr")
4155

4256

43-
#getting annotations
57+
#getting annotations
4458
anno <- rtracklayer::import("ecoli_nissle_1917.gtf")
4559

4660
anno <- anno %>% as.data.frame %>% filter(type == "exon") %>% select(-seqnames, -source, -score, -phase)
4761
vmatch <- match(rownames(tT.exp),anno$gene_id)
4862

4963
vmatch_id <- anno$gene_name[vmatch]
50-
tT.exp <- tT.exp %>% mutate(Gene.Symbol = vmatch_id, Platform.ORF = rownames(tT.exp)) %>% na.omit()
64+
tT.exp <- tT.exp %>% mutate(Gene.Symbol = vmatch_id, Platform.ORF = rownames(tT.exp)) %>% na.omit()
5165
write.csv(tT.exp, file = "datasets/GSE147272_Ecol/GSE147272_exponential.growth.csv")
5266

5367
#now for stationary phase
@@ -59,7 +73,7 @@ tT.sta <- topTable(fit3, n = Inf, adjust.method = "fdr")
5973
vmatch <- match(rownames(tT.sta),anno$gene_id)
6074

6175
vmatch_id <- anno$gene_name[vmatch]
62-
tT.sta <- tT.sta %>% mutate(Gene.Symbol = vmatch_id, Platform.ORF = rownames(tT.sta)) %>% na.omit()
76+
tT.sta <- tT.sta %>% mutate(Gene.Symbol = vmatch_id, Platform.ORF = rownames(tT.sta)) %>% na.omit()
6377
write.csv(tT.sta, file = "datasets/GSE147272_Ecol/GSE147272_stationary.growth.csv")
6478

6579
#getting metadata
@@ -73,4 +87,3 @@ strain <- "Nissle_1917"
7387
gselist <- list(list(GSE = mdata[,c(1,2,5,6)]), list(GSE = mdata[,c(3,4,7,8)]))
7488
metalabels <- c("exponential.growth", "stationary.growth")
7589
extractMetaData(gse_groups = gselist, filename = metaName, microgravity_type = M.TYPE$RCCS, metaLabels = metalabels, strain = strain)
76-

scripts/R/DEA/GSE40648.R

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
#License
2+
3+
# © Copyright 2020 iGEM Concordia, Maher Hassanain, Benjamin Clark, Hajar Mouddene, Grecia Orlano
4+
# This file is part of AstroBio.
5+
# AstroBio is free software: you can redistribute it and/or modify
6+
# it under the terms of the GNU General Public License as published by
7+
# the Free Software Foundation, either version 3 of the License, or any later version.
8+
# AstroBio is distributed in the hope that it will be useful,
9+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
# GNU General Public License for more details.
12+
# You should have received a copy of the GNU General Public License
13+
# along with AstroBio. If not, see <https://www.gnu.org/licenses/>.
114

215
#GSE40648 Ecoli MICROARRAY
316
#R script by BENJAMIN CLARK
@@ -8,7 +21,7 @@ library(Biobase)
821
library(limma)
922
library(org.EcK12.eg.db)
1023
source("microarray_functions.R")
11-
#This pulls the all the samples from the microarry dataset. This returns a list containing a single expressionSet object.
24+
#This pulls the all the samples from the microarry dataset. This returns a list containing a single expressionSet object.
1225
list.gse <- getGEO("GSE40648", GSEMatrix =TRUE, AnnotGPL=TRUE)
1326

1427
gse <- list.gse[[1]]
@@ -31,7 +44,7 @@ treatment <- c(4,5,6)
3144

3245
ecoli <- de.analysis(gse = gse.rm, microgravity_group = treatment, ground_group = control)
3346

34-
#print out the toptable
47+
#print out the toptable
3548
ecoliname <- "datasets/GSE40648_Ecoli/GSE40648_Ecoli.csv"
3649
write.table(ecoli$TopTable, ecoliname, row.names = FALSE, sep = ",")
3750
remove.controls(ecoli$TopTable)
@@ -64,44 +77,44 @@ anno.go.genome <- function(go.ids){
6477
terms <- sapply(names(line.go.items[[1]]),FUN = Term)
6578
names(terms) <- NULL
6679
terms <- unlist(terms)
67-
80+
6881
ontologies <- sapply(names(line.go.items[[1]]), FUN = Ontology)
6982
names(ontologies) <- NULL
7083
ontologies <- unlist(ontologies)
71-
84+
7285
inner_out <- data.frame(id = names(line.go.items[[1]]), term = terms, ontology = ontologies)
7386
out[names(go.ids)[i]]<- list(inner_out)
74-
75-
76-
87+
88+
89+
7790
}
7891
return(out)
7992
}
8093
go.genome <- anno.go.genome(mapped_gos)
8194
valid_ids <- c()
8295
for(i in 1:length(entrez_ids)){
83-
if(length(go.genome[[entrez_ids[i]]]$ontology) > 0){
96+
if(length(go.genome[[entrez_ids[i]]]$ontology) > 0){
8497
GO.Function <- paste(dplyr::filter(go.genome[[entrez_ids[i]]], ontology == "MF")$term , collapse = "///")
8598
GO.Process <- paste(dplyr::filter(go.genome[[entrez_ids[i]]], ontology == "BP")$term , collapse = "///")
8699
GO.Component <- paste(dplyr::filter(go.genome[[entrez_ids[i]]], ontology == "CC")$term , collapse = "///")
87100
}
88101
else{
89102
next
90103
}
91-
104+
92105
ided.rows <- grep(filtered.tT$TopTable$Gene.symbol, pattern = names(entrez_ids[i]))
93106
correct.probe <- which.min(filtered.tT$TopTable[ided.rows,]$P.Value)
94-
107+
95108
filtered.tT$TopTable$GO.Function[ided.rows[correct.probe]] <- GO.Function
96-
109+
97110
filtered.tT$TopTable$GO.Component[ided.rows[correct.probe]] <- GO.Component
98-
111+
99112
filtered.tT$TopTable$GO.Process[ided.rows[correct.probe]] <- GO.Process
100-
101-
113+
114+
102115
valid_ids <- append(valid_ids, ided.rows[correct.probe])
103-
104-
116+
117+
105118
}
106119
valid_ids <- valid_ids[-which(duplicated(valid_ids))]
107120
filtered.tT$TopTable <- filtered.tT$TopTable[valid_ids,]
@@ -118,4 +131,3 @@ strain <- "K12 MG1655"
118131
gse_list <- list(ecoli)
119132
labels <- c("ecoli")
120133
extractMetaData(filename = metaName, gse_groups = gse_list, microgravity_type = M.TYPE$RPM, metaLabels = labels, strain = strain)
121-

scripts/R/DEA/GSE4136.R

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
#License
2+
3+
# © Copyright 2020 iGEM Concordia, Maher Hassanain, Benjamin Clark, Hajar Mouddene, Grecia Orlano
4+
# This file is part of AstroBio.
5+
# AstroBio is free software: you can redistribute it and/or modify
6+
# it under the terms of the GNU General Public License as published by
7+
# the Free Software Foundation, either version 3 of the License, or any later version.
8+
# AstroBio is distributed in the hope that it will be useful,
9+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
# GNU General Public License for more details.
12+
# You should have received a copy of the GNU General Public License
13+
# along with AstroBio. If not, see <https://www.gnu.org/licenses/>.
114

215
#GSE4136 YEAST MICROARRAY
316
#BENJAMIN CLARK
@@ -9,7 +22,7 @@ library(stats)
922
library(dendextend)
1023
library(gplots)
1124
source("microarray_functions.R")
12-
#This pulls the all the samples from the microarry dataset. This returns a list containing a single expressionSet object.
25+
#This pulls the all the samples from the microarry dataset. This returns a list containing a single expressionSet object.
1326
list.gse <- getGEO("GSE4136", GSEMatrix =TRUE, AnnotGPL=TRUE)
1427

1528
gse <- list.gse[[1]]
@@ -28,7 +41,7 @@ control <- c(1,2,3)
2841
treatment <- c(7,8,9)
2942
gen5 <- de.analysis(gse = gse, microgravity_group = treatment, ground_group = control)
3043

31-
#print out the toptable
44+
#print out the toptable
3245
gen5name <- "datasets/GSE4136_Scer/GSE4136_5thGen.csv"
3346
write.table(gen5$TopTable, gen5name, row.names = FALSE, sep = ",")
3447

@@ -74,7 +87,7 @@ ex_genes_f <- readxl::read_xlsx("essential/TableS3_excludedStrains-hom.xlsx", sh
7487

7588
ex_genes <- union(ex_genes_f, ex_genes_g)
7689

77-
#Adding to Gen5 Study
90+
#Adding to Gen5 Study
7891
essential_bool5 <- c()
7992

8093
essential_bool5[match(full_names, gen5$TopTable$Gene.symbol)] <- TRUE
@@ -121,7 +134,7 @@ gen25.orfs <- gen25$TopTable$ID[gen25.sig.df.genes]
121134

122135
grouped.orfs <- union(gen5.orfs,gen25.orfs)
123136

124-
#pulling relevent expression data
137+
#pulling relevent expression data
125138
ex <- exprs(gse)
126139
filtered.ex <- ex[rownames(ex) %in% grouped.orfs,]
127140

@@ -147,8 +160,8 @@ hc <- as.dendrogram(hclust(as.dist(1-cor(t(filtered.ex), method="pearson")), met
147160

148161
#c.index <- which(labels(hc) %in% both)
149162

150-
hc %>% set("labels_col", "white") %>%
151-
set("by_labels_branches_col", value = both) %>%
163+
hc %>% set("labels_col", "white") %>%
164+
set("by_labels_branches_col", value = both) %>%
152165
plot(main = "Highlighted Union Genes Across Timescales")
153166

154167
#PLOTTING INTERSECTING Genes

scripts/R/DEA/GSE50881.R

Lines changed: 36 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
1+
#License
2+
3+
# © Copyright 2020 iGEM Concordia, Maher Hassanain, Benjamin Clark, Hajar Mouddene, Grecia Orlano
4+
# This file is part of AstroBio.
5+
# AstroBio is free software: you can redistribute it and/or modify
6+
# it under the terms of the GNU General Public License as published by
7+
# the Free Software Foundation, either version 3 of the License, or any later version.
8+
# AstroBio is distributed in the hope that it will be useful,
9+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
# GNU General Public License for more details.
12+
# You should have received a copy of the GNU General Public License
13+
# along with AstroBio. If not, see <https://www.gnu.org/licenses/>.
14+
115
###GSE50881 YEAST MICROARRAY TWO CHANNEL
2-
#BENJAMIN CLARK
16+
#BENJAMIN CLARK
317

418
library(GEOquery)
519
library(Biobase)
@@ -28,17 +42,17 @@ fvarLabels(gse) <- make.names(fvarLabels(gse))
2842

2943
# design <- cbind(DyeEffect = 1,SpaceVsGround = c(1,-1,1,-1,1,-1,1,-1))
3044
# #block <- fData(gse[,1])$Block
31-
#
32-
#
45+
#
46+
#
3347
# fit <- lmFit(gse,design)
3448
# fit <- eBayes(fit, 0.01)
35-
#
49+
#
3650
# #topTable.dyes <- topTable(fit, coef = "DyeEffect")
37-
#
51+
#
3852
# anno.data <- fData(gse)
39-
#
53+
#
4054
# f.tT <- remove.candida.controls(topTable.SvsG)
41-
#
55+
#
4256
# f.tT <- subset(f.tT, select = c("CGD_Systematic_Name", "Description", "SpaceVsGround", "AveExpr", "F", "P.Value", "adj.P.Val"))
4357

4458
topTable.SvsG <- topTable(fit, adjust.method = "fdr", sort.by = "B", number = length(fit[[1]]))
@@ -48,10 +62,10 @@ f.tT <- subset(f.tT, select = c("CGD_Systematic_Name", "Description", "SpaceVsGr
4862

4963

5064

51-
rowid <- c()
65+
rowid <- c()
5266
for(i in 1:length(f.tT$ID)){
5367
rowid <- append(rowid,((f.tT %>% filter(SPOT_ID == f.tT$SPOT_ID[i]) %>% arrange(P.Value))[1,])$ID)
54-
68+
5569
}
5670

5771
best.rows.ids <- rowid[-which(duplicated(rowid))]
@@ -81,9 +95,9 @@ go_ids <- read.csv("Candida_albicans_GO.csv")
8195
ordered.gos <- list()
8296
for(annos in 1:length(rm.ftT$CGD_Systematic_Name)){
8397
indexes <- which(rm.ftT$CGD_Systematic_Name[annos] == go_ids$systemic_id)
84-
ids <- go_ids$go_id[indexes]
98+
ids <- go_ids$go_id[indexes]
8599
ordered.gos[annos] <- list(ids)
86-
100+
87101
}
88102

89103
anno.terms <- list()
@@ -96,24 +110,24 @@ for(i in 1:length(ordered.gos)){
96110
GO.COMPONENT <- c()
97111
if(length(ordered.gos[[i]]) == 0){
98112
full.MF <- append(full.MF, NA)
99-
full.CC <- append(full.CC, NA)
113+
full.CC <- append(full.CC, NA)
100114
full.BP <- append(full.BP, NA)
101115
next
102116
}
103117
for(j in 1:length(ordered.gos[[i]])){
104-
118+
105119
if(Ontology(ordered.gos[[i]][[j]]) == "MF"){
106120
GO.FUNCTION <- append(GO.FUNCTION, Term(ordered.gos[[i]][[j]]))
107-
121+
108122
}else if(Ontology(ordered.gos[[i]][[j]]) == "CC"){
109123
GO.COMPONENT <- append(GO.COMPONENT, Term(ordered.gos[[i]][[j]]))
110-
124+
111125
}
112126
else if(Ontology(ordered.gos[[i]][[j]]) == "BP"){
113127
GO.PROCESS <- append(GO.PROCESS, Term(ordered.gos[[i]][[j]]))
114-
128+
115129
}
116-
130+
117131
}
118132
if(length(GO.FUNCTION) != 0){
119133
full.MF <- append(full.MF, paste(GO.FUNCTION, collapse = "///"))}
@@ -145,15 +159,15 @@ names <- unlist(names)
145159
Chromosome_Location <- stringr::str_extract_all(rm.ftT$Description, pattern = "(Contig\\d+:\\D+\\d+..\\d+\\)|Contig\\d+:\\d+..\\d+)")
146160
Chromosome_Location <- sapply(Chromosome_Location, FUN = paste, collapse = "///", USE.NAMES = FALSE)
147161

148-
final.tT <- rm.ftT %>% mutate( GO.Function = full.MF, GO.Component = full.CC,
149-
GO.Process = full.BP, Gene.Name = names,
150-
Chromosome.Location = Chromosome_Location,
151-
ID = NULL, SPOT_ID = NULL, Description = NULL) %>%
162+
final.tT <- rm.ftT %>% mutate( GO.Function = full.MF, GO.Component = full.CC,
163+
GO.Process = full.BP, Gene.Name = names,
164+
Chromosome.Location = Chromosome_Location,
165+
ID = NULL, SPOT_ID = NULL, Description = NULL) %>%
152166
rename(LogFC = SpaceVsGround, Platform_ORF = CGD_Systematic_Name)
153167

154168

155169
write.csv(final.tT, file = "datasets/GSE50881_Calb/GSE50881.csv")
156170

157171

158-
extractMetaData(gse_groups = list(list(GSE = gse[,c(1,3,5,7)]), list(GSE = gse[,c(2,4,6,8)])), microgravity_type = M.TYPE$SPACEFLOWN,
172+
extractMetaData(gse_groups = list(list(GSE = gse[,c(1,3,5,7)]), list(GSE = gse[,c(2,4,6,8)])), microgravity_type = M.TYPE$SPACEFLOWN,
159173
filename = "datasets/GSE50881_Calb/GSE50881_meta", metaLabels = c("dye_swap1", "dye_swap2"), strain = "SC5413")

scripts/R/DEA/GSE64468.R

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
1+
#License
2+
3+
# © Copyright 2020 iGEM Concordia, Maher Hassanain, Benjamin Clark, Hajar Mouddene, Grecia Orlano
4+
# This file is part of AstroBio.
5+
# AstroBio is free software: you can redistribute it and/or modify
6+
# it under the terms of the GNU General Public License as published by
7+
# the Free Software Foundation, either version 3 of the License, or any later version.
8+
# AstroBio is distributed in the hope that it will be useful,
9+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
# GNU General Public License for more details.
12+
# You should have received a copy of the GNU General Public License
13+
# along with AstroBio. If not, see <https://www.gnu.org/licenses/>.
14+
115
###GSE64468 YEAST MICROARRAY
2-
#BENJAMIN CLARK
16+
#BENJAMIN CLARK
317

418
library(GEOquery)
519
library(Biobase)

0 commit comments

Comments
 (0)