This is an R Markdown Notebook. When you execute code within the notebook, the results appear beneath the code.
Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Ctrl+Shift+Enter.
Add a new chunk by clicking the Insert Chunk button on the toolbar or by pressing Ctrl+Alt+I.
When you save the notebook, an HTML file containing the code and output will be saved alongside it (click the Preview button or press Ctrl+Shift+K to preview the HTML file).
library(devtools)
install_github("genomicsclass/tissuesGeneExpression")
Skipping install of 'tissuesGeneExpression' from a github remote, the SHA1 (a43cf4b5) has not changed since last install.
Use `force = TRUE` to force installation
library(tissuesGeneExpression)
data(tissuesGeneExpression)
(still introduction)
#head(e) #too long dawg
head(tissue)
[1] "kidney" "kidney" "kidney" "kidney" "kidney" "kidney"
The data represents RNA expression levels for seven tissues, each with several biological replicates. We call samples that we consider to be from the same population, such as liver tissue from different individuals, biological replicates:
Question 1: How many biological replicates are there for hippocampus?
table(tissue)
tissue
cerebellum colon endometrium hippocampus kidney liver
38 34 15 31 39 26
placenta
6
The answer is 31.
Question 2: What is the distance between samples 3 and 45?
x <- e[,3]
y <- e[,45]
sqrt(sum((x-y)^2))
[1] 152.5662
sqrt(crossprod(x-y))
[,1]
[1,] 152.5662
tissue[c(3,45)]
[1] "kidney" "hippocampus"
#d #too long, again, try if u want. but this is one of the methods to know the distances.
d <-dist(t(e))
as.matrix(d)[3,45]
[1] 152.5662
Answer: 152.5662
Question 3: what is the distance between gene 210486_at and 200805_at?
j <- e['210486_at',]
k <- e['200805_at',]
sqrt(crossprod(j-k))
[,1]
[1,] 41.01153
Answer: 41.01153
Question 4: If I run the command (donโt run it!):
#d = as.matrix(dist(e))
How many cells (number of rows times number of columns) would this matrix have?
22215*22215
[1] 493506225
Answer: 493506225
Question 5: Compute the distance between all pairs of samples:
d = dist(t(e)) Read the help file for dist().
How many distances are stored in d? (Hint: What is the length of d)?
length(d)
[1] 17766
Answer: 17766
Question 6: Why is the answer above not ncol(e)^2?
Note that the distance between samples i and j is the same as distance between samples j and i. Also the distance between a sample and itself is 0. The object returned by dist() avoids storing all those values.
The preview shows you a rendered HTML copy of the contents of the editor. Consequently, unlike Knit, Preview does not run any R code chunks. Instead, the output of the chunk when it was last run in the editor is displayed.
LS0tDQp0aXRsZTogIkhpZ2ggVGhyb3VnaHB1dCBEYXRhIEFuYWx5c2lzIChMaWZlIFNjaWVuY2UpIFdlZWsgT25lLCBEaXN0YW5jZSINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNClRoaXMgaXMgYW4gW1IgTWFya2Rvd25dKGh0dHA6Ly9ybWFya2Rvd24ucnN0dWRpby5jb20pIE5vdGVib29rLiBXaGVuIHlvdSBleGVjdXRlIGNvZGUgd2l0aGluIHRoZSBub3RlYm9vaywgdGhlIHJlc3VsdHMgYXBwZWFyIGJlbmVhdGggdGhlIGNvZGUuIA0KDQpUcnkgZXhlY3V0aW5nIHRoaXMgY2h1bmsgYnkgY2xpY2tpbmcgdGhlICpSdW4qIGJ1dHRvbiB3aXRoaW4gdGhlIGNodW5rIG9yIGJ5IHBsYWNpbmcgeW91ciBjdXJzb3IgaW5zaWRlIGl0IGFuZCBwcmVzc2luZyAqQ3RybCtTaGlmdCtFbnRlciouIA0KDQoNCkFkZCBhIG5ldyBjaHVuayBieSBjbGlja2luZyB0aGUgKkluc2VydCBDaHVuayogYnV0dG9uIG9uIHRoZSB0b29sYmFyIG9yIGJ5IHByZXNzaW5nICpDdHJsK0FsdCtJKi4NCg0KV2hlbiB5b3Ugc2F2ZSB0aGUgbm90ZWJvb2ssIGFuIEhUTUwgZmlsZSBjb250YWluaW5nIHRoZSBjb2RlIGFuZCBvdXRwdXQgd2lsbCBiZSBzYXZlZCBhbG9uZ3NpZGUgaXQgKGNsaWNrIHRoZSAqUHJldmlldyogYnV0dG9uIG9yIHByZXNzICpDdHJsK1NoaWZ0K0sqIHRvIHByZXZpZXcgdGhlIEhUTUwgZmlsZSkuDQoNCg0KYGBge3J9DQpsaWJyYXJ5KGRldnRvb2xzKQ0KaW5zdGFsbF9naXRodWIoImdlbm9taWNzY2xhc3MvdGlzc3Vlc0dlbmVFeHByZXNzaW9uIikNCmBgYA0KDQoNCmBgYHtyfQ0KbGlicmFyeSh0aXNzdWVzR2VuZUV4cHJlc3Npb24pDQpkYXRhKHRpc3N1ZXNHZW5lRXhwcmVzc2lvbikNCmBgYA0KDQooc3RpbGwgaW50cm9kdWN0aW9uKQ0KDQpgYGB7cn0NCiNoZWFkKGUpICN0b28gbG9uZyBkYXdnLCBidXQgdSBjYW4gdHJ5IHJ1bm5pbmcgdGhpcyBpZiB1ciBjdXJpb3VzDQpoZWFkKHRpc3N1ZSkNCmBgYA0KVGhlIGRhdGEgcmVwcmVzZW50cyBSTkEgZXhwcmVzc2lvbiBsZXZlbHMgZm9yIHNldmVuIHRpc3N1ZXMsIGVhY2ggd2l0aCBzZXZlcmFsIGJpb2xvZ2ljYWwgcmVwbGljYXRlcy4gV2UgY2FsbCBzYW1wbGVzIHRoYXQgd2UgY29uc2lkZXIgdG8gYmUgZnJvbSB0aGUgc2FtZSBwb3B1bGF0aW9uLCBzdWNoIGFzIGxpdmVyIHRpc3N1ZSBmcm9tIGRpZmZlcmVudCBpbmRpdmlkdWFscywgYmlvbG9naWNhbCByZXBsaWNhdGVzOg0KDQpRdWVzdGlvbiAxOiBIb3cgbWFueSBiaW9sb2dpY2FsIHJlcGxpY2F0ZXMgYXJlIHRoZXJlIGZvciBoaXBwb2NhbXB1cz8NCmBgYHtyfQ0KdGFibGUodGlzc3VlKQ0KYGBgDQoNClRoZSBhbnN3ZXIgaXMgMzEuDQoNClF1ZXN0aW9uIDI6IFdoYXQgaXMgdGhlIGRpc3RhbmNlIGJldHdlZW4gc2FtcGxlcyAzIGFuZCA0NT8NCg0KDQpgYGB7cn0NCnggPC0gZVssM10NCnkgPC0gZVssNDVdDQpzcXJ0KHN1bSgoeC15KV4yKSkNCmBgYA0KYGBge3J9DQpzcXJ0KGNyb3NzcHJvZCh4LXkpKQ0KdGlzc3VlW2MoMyw0NSldDQpgYGANCmBgYHtyfQ0KI2QgI3RvbyBsb25nLCBhZ2FpbiwgdHJ5IGlmIHUgd2FudC4gYnV0IHRoaXMgaXMgb25lIG9mIHRoZSBtZXRob2RzIHRvIGtub3cgdGhlIGRpc3RhbmNlcy4NCmQgPC1kaXN0KHQoZSkpDQphcy5tYXRyaXgoZClbMyw0NV0NCmBgYA0KQW5zd2VyOiAxNTIuNTY2Mg0KDQpRdWVzdGlvbiAzOiB3aGF0IGlzIHRoZSBkaXN0YW5jZSBiZXR3ZWVuIGdlbmUgMjEwNDg2X2F0IGFuZCAyMDA4MDVfYXQ/DQoNCmBgYHtyfQ0KaiA8LSBlWycyMTA0ODZfYXQnLF0NCmsgPC0gZVsnMjAwODA1X2F0JyxdDQoNCnNxcnQoY3Jvc3Nwcm9kKGotaykpDQpgYGANCkFuc3dlcjogNDEuMDExNTMNCg0KUXVlc3Rpb24gNDogSWYgSSBydW4gdGhlIGNvbW1hbmQgKGRvbid0IHJ1biBpdCEpOg0KDQpgYGB7cn0NCiNkID0gYXMubWF0cml4KGRpc3QoZSkpDQpgYGANCg0KSG93IG1hbnkgY2VsbHMgKG51bWJlciBvZiByb3dzIHRpbWVzIG51bWJlciBvZiBjb2x1bW5zKSB3b3VsZCB0aGlzIG1hdHJpeCBoYXZlPw0KDQpgYGB7cn0NCjIyMjE1KjIyMjE1DQpgYGANCkFuc3dlcjogNDkzNTA2MjI1DQoNClF1ZXN0aW9uIDU6IENvbXB1dGUgdGhlIGRpc3RhbmNlIGJldHdlZW4gYWxsIHBhaXJzIG9mIHNhbXBsZXM6DQoNCmQgPSBkaXN0KHQoZSkpDQpSZWFkIHRoZSBoZWxwIGZpbGUgZm9yIGRpc3QoKS4NCg0KSG93IG1hbnkgZGlzdGFuY2VzIGFyZSBzdG9yZWQgaW4gZD8gKEhpbnQ6IFdoYXQgaXMgdGhlIGxlbmd0aCBvZiBkKT8NCmBgYHtyfQ0KbGVuZ3RoKGQpDQpgYGANCkFuc3dlcjogMTc3NjYNCg0KUXVlc3Rpb24gNjogV2h5IGlzIHRoZSBhbnN3ZXIgYWJvdmUgbm90IG5jb2woZSleMj8NCg0KYGBge3J9DQpOb3RlIHRoYXQgdGhlIGRpc3RhbmNlIGJldHdlZW4gc2FtcGxlcyBpIGFuZCBqIGlzIHRoZSBzYW1lIGFzIGRpc3RhbmNlIGJldHdlZW4gc2FtcGxlcyBqIGFuZCBpLiBBbHNvIHRoZSBkaXN0YW5jZSBiZXR3ZWVuIGEgc2FtcGxlIGFuZCBpdHNlbGYgaXMgMC4gVGhlIG9iamVjdCByZXR1cm5lZCBieSBkaXN0KCkgYXZvaWRzIHN0b3JpbmcgYWxsIHRob3NlIHZhbHVlcy4NCmBgYA0KDQoNClRoZSBwcmV2aWV3IHNob3dzIHlvdSBhIHJlbmRlcmVkIEhUTUwgY29weSBvZiB0aGUgY29udGVudHMgb2YgdGhlIGVkaXRvci4gQ29uc2VxdWVudGx5LCB1bmxpa2UgKktuaXQqLCAqUHJldmlldyogZG9lcyBub3QgcnVuIGFueSBSIGNvZGUgY2h1bmtzLiBJbnN0ZWFkLCB0aGUgb3V0cHV0IG9mIHRoZSBjaHVuayB3aGVuIGl0IHdhcyBsYXN0IHJ1biBpbiB0aGUgZWRpdG9yIGlzIGRpc3BsYXllZC4NCg0KDQo=