Mercurial > repos > chemteam > bio3d_pca
annotate pca.R @ 1:54dd1596e04e draft
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 8e1fece3eaef36823e90f5d10f8bb8b809544c55
author | chemteam |
---|---|
date | Sun, 13 Jan 2019 03:19:35 -0500 |
parents | f56fb2762abb |
children |
rev | line source |
---|---|
0
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
1 #!/usr/bin/env Rscript |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
2 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
3 options(stringAsfactors = FALSE) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
4 args <- commandArgs(trailingOnly = TRUE) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
5 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
6 library(bio3d) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
7 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
8 dcdfile <- args[1] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
9 pdbfile <- args[2] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
10 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
11 dcd <- read.dcd(dcdfile) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
12 pdb <- read.pdb(pdbfile) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
13 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
14 method <- args[3] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
15 selection <- args[4] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
16 domain <- args[5] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
17 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
18 output <- args[6] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
19 pca_plot <- args[7] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
20 pca_cluster <- args[8] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
21 pc1_rmsf <- args[9] |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
22 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
23 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
24 if (selection == "string") { |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
25 inds <- atom.select(pdb, string = domain) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
26 } |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
27 if (selection == "elety") { |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
28 inds <- atom.select(pdb, elety = domain) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
29 } |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
30 if (selection == "resid") { |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
31 inds <- atom.select(pdb, resid = domain) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
32 } |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
33 if (selection == "segid") { |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
34 inds <- atom.select(pdb, segid = domain) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
35 } |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
36 xyz <- fit.xyz(fixed=pdb$xyz, mobile=dcd, fixed.inds=inds$xyz, mobile.inds=inds$xyz) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
37 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
38 if (method == "FALSE") { |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
39 pc <- pca.xyz(xyz[,inds$xyz], use.svd=FALSE) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
40 } |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
41 if (method == "TRUE") { |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
42 pc <- pca.xyz(xyz[,inds$xyz], use.svd=TRUE) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
43 } |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
44 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
45 write.table(pc$au[,1:2:3], file = output, row.names = TRUE, col.names = FALSE, quote =FALSE, sep="\t") |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
46 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
47 png(pca_plot) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
48 plot(pc, col=bwr.colors(nrow(xyz)) ) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
49 dev.off() |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
50 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
51 png(pca_cluster) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
52 hc <- hclust(dist(pc$z[,1:2])) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
53 grps <- cutree(hc, k=2) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
54 plot(pc, col=grps) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
55 dev.off() |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
56 |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
57 png(pc1_rmsf) |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
58 plot.bio3d(pc$au[,1], ylab="PC1 (A)", xlab="Residue Position", typ="l") |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
59 points(pc$au[,2], typ="l", col="blue") |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
60 dev.off() |
f56fb2762abb
planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/bio3d commit 580d80c3fd856bb3ae18ef7b5458eb3b5e2c7374
chemteam
parents:
diff
changeset
|
61 |