Skip to content

Commit e70a84e

Browse files
committed
Oct 26, 2022, 9:00 PM
1 parent ceee63c commit e70a84e

12 files changed

+473
-1
lines changed

cluster1.png

203 KB
Loading

cluster10.png

380 KB
Loading

cluster2.png

261 KB
Loading

cluster3.png

238 KB
Loading

cluster4.png

158 KB
Loading

cluster5.png

224 KB
Loading

cluster6.png

273 KB
Loading

cluster7.png

406 KB
Loading

cluster8.png

288 KB
Loading

cluster9.png

321 KB
Loading

lecture-09-inclass.Rmd

+174
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,178 @@ library(tidyverse)
1111

1212
## Load the data
1313

14+
```{r}
15+
yeast.expression <-
16+
read_csv("~/Downloads/kelliher-scer-expression-data.csv",
17+
show_col_types = FALSE)
18+
```
19+
20+
```{r}
21+
yeast.800 <-
22+
filter(yeast.expression, normalized_per_rank <= 800) |>
23+
mutate(normalized_per_rank = NULL)
24+
```
25+
26+
```{r}
27+
yeast.long <-
28+
pivot_longer(yeast.800, !gene_ID,
29+
names_to = "time",
30+
values_to = "expression",
31+
names_transform = list(time = as.integer)) |>
32+
group_by(gene_ID) |>
33+
mutate(expression = as.numeric(scale(expression))) %>%
34+
rename(gene = gene_ID)
35+
```
36+
37+
38+
```{r}
39+
nrm1 <- filter(yeast.long, gene == "NRM1")
40+
htb2 <- filter(yeast.long, gene == "HTB2")
41+
42+
plot(nrm1$expression, htb2$expression)
43+
```
44+
45+
```{r}
46+
1 - cor(nrm1$expression, htb2$expression)
47+
```
48+
49+
50+
```{r}
51+
yeast.genes.as.vars <-
52+
yeast.long |>
53+
pivot_wider(names_from = gene,
54+
values_from = expression) |>
55+
select(-time)
56+
```
57+
58+
```{r}
59+
yeast.corr <- cor(yeast.genes.as.vars)
60+
```
61+
62+
```{r}
63+
dim(yeast.corr)
64+
```
65+
66+
```{r}
67+
yeast.dist <- 1 - yeast.corr
68+
```
69+
70+
```{r}
71+
1 - (yeast.corr[1:5, 1:5])
72+
```
73+
```{r}
74+
yeast.clustering.complete <-
75+
hclust(as.dist(yeast.dist), method = "complete")
76+
```
77+
78+
```{r}
79+
plot(yeast.clustering.complete)
80+
```
81+
82+
```{r}
83+
library(dendextend)
84+
```
85+
86+
87+
```{r}
88+
yeast.dend <- as.dendrogram(yeast.clustering.complete)
89+
```
90+
91+
92+
```{r}
93+
plot(yeast.dend, leaflab = "none")
94+
```
95+
```{r}
96+
plot(color_branches(yeast.dend, k=10),leaflab="none")
97+
```
98+
```{r}
99+
clusters <- cutree(yeast.dend,
100+
k=10,
101+
order_clusters_as_data = FALSE)
102+
```
103+
104+
```{r}
105+
clusters_df <-
106+
tibble(gene = names(clusters), cluster = clusters)
107+
108+
```
109+
110+
```{r}
111+
clusters_df
112+
```
113+
114+
115+
```{r}
116+
cluster8.genes <- filter(clusters_df,
117+
cluster == 8)$gene
118+
119+
cluster8.genes
120+
```
121+
122+
123+
124+
```{r}
125+
126+
yeast.long |>
127+
filter(gene %in% cluster8.genes) |>
128+
ggplot(aes(x = time, y = gene)) +
129+
geom_tile(aes(fill = expression)) +
130+
scale_fill_gradient2(low = "cyan",
131+
mid = "black",
132+
high = "yellow",
133+
midpoint = 0,
134+
limits=c(-2.5,2.5),
135+
oob = scales::squish) +
136+
theme(axis.text.y = element_text(size = 6)) # set size of y axis labels
137+
138+
```
139+
140+
141+
```{r}
142+
143+
cluster.genes <- filter(clusters_df,
144+
cluster == 5)$gene
145+
146+
yeast.long |>
147+
filter(gene %in% cluster.genes) |>
148+
ggplot(aes(x = time, y = gene)) +
149+
geom_tile(aes(fill = expression)) +
150+
scale_fill_gradient2(low = "cyan",
151+
mid = "black",
152+
high = "yellow",
153+
midpoint = 0,
154+
limits=c(-2.5,2.5),
155+
oob = scales::squish) +
156+
theme(axis.text.y = element_text(size = 6)) # set size of y axis labels
157+
158+
```
159+
```{r}
160+
for (i in 1:10) {
161+
162+
cluster.genes <- filter(clusters_df,
163+
cluster == i)$gene
164+
165+
yeast.long |>
166+
filter(gene %in% cluster.genes) |>
167+
ggplot(aes(x = time, y = gene)) +
168+
geom_tile(aes(fill = expression)) +
169+
scale_fill_gradient2(low = "cyan",
170+
mid = "black",
171+
high = "yellow",
172+
midpoint = 0,
173+
limits=c(-2.5,2.5),
174+
oob = scales::squish) +
175+
theme(axis.text.y = element_text(size = 6)) # set size of y axis labels
176+
177+
ggsave(str_c("cluster", i, ".png"))
178+
179+
}
180+
181+
```
182+
183+
184+
```{r}
185+
str_c("cluster", 3, ".png")
186+
```
187+
14188

lecture-09-inclass.nb.html

+299-1
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)