Chapter 6 PICRUSt2
This demo would guide you how to implement funciton analysis on 16S data
PICRUSt2 algorithm
The Picture below shows the algorithm of PICRUSt2. Please find details on https://github.com/picrust/picrust2/wiki.
(a) The PICRUSt2 method consists of phylogenetic placement, hidden-state-prediction and sample-wise gene and pathway abundance tabulation. ASV sequences and abundances are taken as input, and gene family and pathway abundances are output. All necessary reference tree and trait databases for the default workflow are included in the PICRUSt2 implementation.
6.1 Environment Setup
Pull docker image of picrust2(authored by zhangzhikuan@xbiome.com) from server. You can skip this step if you have pulled docker image of picrust2 on your server already.
6.2 Run PICRUSt2
Run PICRUSt2 on 16S data. If you have run PICRUSt2 and generated output files from PICRUSt2 already, please jump to Interpret result table from PICRUSt2.
Check the required parameters of PICRUSt2 docker image.
docker run -i --rm -u $(id -u):$(id -g) -v /home/tongbangzhuo/tongbangzhuo_Xbiome1/Project/PICRUSt2/:/in harbor.xbiome.com/xbiome/environments/picrust2:v2.4.1-03d011a bash -c "python picrust2_main.py --help"
## usage: picrust2_main.py [-h] -i INPUTDIR -o OUTPUTDIR [-b REFDB] [-r RESOURCE]
## -p PARAM
##
## optional arguments:
## -h, --help show this help message and exit
## -i INPUTDIR, --inputdir INPUTDIR
## input dir
## -o OUTPUTDIR, --outputdir OUTPUTDIR
## The dir that where the result output to
## -b REFDB, --refdb REFDB
## required database path if needed, for example:
## "db_name:db_path", if there are more than 1 database,
## please join them by ","
## -r RESOURCE, --resource RESOURCE
## The resources that the module need,
## "cpu:2,mem:6,disk:6" or "cpu:2,mem:6" or "cpu:3"
## -p PARAM, --param PARAM
## JSON format config file
Three parameters are required:
- INPUTDIR, specify your dada2 output folder as the input of picrust2 docker image.
- OUTPUTDIR, specify the output dirctory. Don’t create the output folder your self, picrust2 docker image would take care of it.
- PARAM, config files of running picrust2 docker image. Usually use the default file in docker image: /opt/test/parameter_default.json
The whole process might take hours to finish. Demo data (3970 ASVs took approximately 1 hour)
docker run -i --rm -u $(id -u):$(id -g) -v /home/tongbangzhuo/tongbangzhuo_Xbiome1/Project/PICRUSt2/:/in harbor.xbiome.com/xbiome/environments/picrust2:v2.4.1-03d011a bash -c "python picrust2_main.py -i /in/Demodata/ -o /in/output/ -p /opt/test/parameter_default.json"
6.3 Interpret result table from PICRUSt2
There are many possible ways to analyze the PICRUSt2 output. STAMP is one tool that can be used that requires no background in scripting languages. This tool is very useful for visualizing microbiome data, but note that there are better alternatives for conducting statistical tests with compositional data (such as the ALDEx2 R package). If you would like to try out STAMP for visualizing the PICRUSt2 output, see here.
No matter what analysis approach you take, you should be aware that results based on differential abundance testing can vary substantially between shotgun metagenomics sequencing data and amplicon-based metagenome predictions based on the same samples. This is especially true for community-wide pathway predictions. Please check out this post and this response to a FAQ for more details.
But here, we carry out DA on KO profile table predicted from PICRUSt2 as demo.
6.3.1 Read input
Read profile table from PICRUSt2 result
## Load aldex
library(ALDEx2)
library(tibble)
library(magrittr)
library(phyloseq)
KO_profile <- read.table('/share/projects/SOP/Functional_Analysis/Tongbangzhuo/Demodata/PICRUSt2/output/KO_metagenome_out/pred_metagenome_unstrat.tsv',
sep = '\t', comment.char = '', na.strings = '', header = TRUE, check.names = FALSE)
head(KO_profile)
## function 1-1 1-10 1-2 1-3 1-4 1-5 1-6 1-7 1-8 1-9 2-1_new 2-10 2-2 2-3 2-4 2-5 2-6 2-7
## 1 K00001 1111.02 15361.65 13872.39 13718.14 13197.77 4978.74 8640.27 8610.96 13514.95 10794.91 24054.05 1577.49 2562.29 12037.83 21575.02 4129.33 537.12 3579.25
## 2 K00002 62.00 45.00 0.00 30.00 208.00 307.00 34.00 115.00 572.00 41.00 140.00 0.00 146.00 183.40 0.00 0.00 0.00 86.00
## 3 K00003 2333.08 35353.06 17687.85 25700.77 21103.60 11221.88 30983.44 27016.03 8010.85 14502.45 40309.95 8444.30 13531.49 21307.22 24598.45 15593.47 11804.09 9616.33
## 4 K00004 1913.87 117.80 1304.60 3378.97 11791.20 11862.60 307.40 420.17 664.75 328.66 66993.10 13792.60 21589.49 2133.60 5628.47 10415.70 14730.80 11360.99
## 5 K00005 21600.27 48223.27 6437.13 5929.35 5347.54 3884.48 17472.11 20782.03 13209.86 7707.98 37765.21 433.10 1466.68 8481.97 9026.81 4212.19 4801.46 2251.23
## 6 K00007 10468.99 45.57 462.54 172.10 459.08 652.43 65.21 210.00 3495.53 155.72 18018.53 5.00 337.29 3010.23 47.38 45.93 2.71 200.14
## 2-8 2-9 3-1 3-10 3-2 3-3 3-4_new 3-5 3-6_new 3-7 3-8_new 3-9_new 4-1 4-10 4-2 4-3 4-4 4-5 4-6
## 1 1879.32 6504.89 600.93 11001.92 594.74 2588.96 38966.52 3939.76 55757.66 4177.65 46536.71 52996.07 12799.43 15743.00 8006.54 17418.30 13203.65 15239.94 17004.02
## 2 74.00 5.00 0.00 61.00 13.00 79.00 102.00 159.00 2191.00 844.00 1404.00 2802.00 0.00 1170.00 0.00 2354.00 410.00 1021.00 1428.00
## 3 11389.30 13398.25 11720.00 24071.84 11151.16 9787.05 44070.14 14095.11 63869.31 22690.82 33295.34 44499.99 6382.85 5207.10 16143.88 10088.60 4528.80 7241.90 6809.42
## 4 20338.00 15685.80 22329.80 780.60 14570.33 15106.40 18652.20 16127.80 4099.27 125.50 6176.00 3934.03 30.00 192.20 24.00 0.00 44.00 7.00 235.75
## 5 1018.49 1405.52 166.17 10586.31 3245.26 1172.18 11695.52 3886.85 47517.98 18250.52 29082.51 43558.97 5978.59 12638.42 6265.20 14223.27 12231.55 12387.03 17688.55
## 6 174.86 4.15 0.00 208.64 14.26 170.43 572.72 305.85 11819.90 298.72 6875.43 9593.22 92.92 3784.21 70.99 3499.32 3828.33 3186.93 6247.42
## 4-7 4-8 4-9 5-1 5-10 5-2 5-3 5-4 5-5 5-6 5-7 5-8 5-9_new 6-1 6-10 6-2 6-3 6-4_new 6-5_new
## 1 14919.00 17362.83 18735.60 14412.40 11185.25 24000.96 18124.75 19642.75 15365.55 10873.53 11123.50 11579.00 49723.71 2032.02 490.23 1040.64 477.12 39453.21 26497.25
## 2 1660.00 1877.00 2614.00 1561.00 0.00 4521.00 2087.00 2957.00 1816.00 153.00 0.00 0.00 522.00 0.00 38.00 12.00 0.00 535.00 455.00
## 3 6946.40 7973.55 11145.80 6955.16 15659.17 19274.30 8416.25 11985.00 7350.30 19120.00 19435.17 11338.03 44850.17 9420.23 10552.97 9010.06 10712.08 63167.75 49282.61
## 4 201.80 235.60 225.40 0.00 99.25 11.60 2.00 7.00 8.00 80.00 78.00 357.95 611.85 13440.40 19492.40 15746.00 20157.87 22847.23 35772.70
## 5 14985.24 15053.94 16793.67 11458.42 10131.42 20513.47 15019.70 17020.17 12546.52 13788.47 13842.11 8711.45 27699.92 1789.83 200.89 200.10 209.91 22441.96 24121.40
## 6 4006.83 4459.93 4493.67 2859.21 5.71 4698.32 4167.89 4485.42 3432.01 142.82 5.72 66.29 1714.11 0.00 2.86 0.00 3.57 1218.52 1569.78
## 6-6 6-7_new 6-8_new 6-9 7-1 7-10 7-2 7-3 7-4 7-5 7-6 7-7 7-8 7-9 8-1 8-10 8-2 8-3 8-4
## 1 2746.95 59430.45 49094.97 543.44 8061.66 15081.42 7689.49 11046.41 11913.08 18184.75 12650.25 7948.35 13681.54 14887.71 13590.42 13137.37 11680.42 9330.06 14908.71
## 2 58.00 3982.00 1480.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
## 3 11464.98 45404.40 55049.48 13072.15 5829.43 5626.50 10723.00 12207.57 11690.03 12747.30 13734.58 10495.17 18670.50 7706.84 11422.33 15111.75 9126.67 11392.08 18340.16
## 4 17008.40 6240.25 17086.20 8690.07 18.20 20.00 36.00 0.00 24.40 22.60 84.00 0.00 52.00 11.00 28.00 36.00 14.00 5.00 7.00
## 5 1250.74 41184.17 26278.59 7864.24 1538.00 660.50 2526.67 2195.41 1115.50 1860.83 3549.50 2878.00 3145.50 1004.17 1390.66 3691.41 1289.25 3883.24 6055.33
## 6 4.33 9898.11 4345.75 4.67 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1.25 0.00 0.00 0.00 0.00
## 8-5 8-6 8-7 8-8 8-9
## 1 12144.25 11506.58 12139.83 13407.25 12041.21
## 2 0.00 0.00 0.00 0.00 3.20
## 3 13613.83 6827.33 6532.00 10133.83 16754.94
## 4 24.00 0.00 6.00 14.00 0.00
## 5 3591.66 863.00 1052.50 1132.67 3653.50
## 6 0.00 0.00 0.00 0.00 3.45
## [1] 7287 81
metadata <- readxl::read_xlsx('/share/projects/SOP/Functional_Analysis/Tongbangzhuo/Demodata/PICRUSt2/Demodata/Eround1_Animal_metadata.xlsx') %>% as.data.frame() %>% column_to_rownames('SampleID')
## Construct phyloseq object of functional data
phy <- phyloseq::phyloseq(otu_table(KO_profile %>% column_to_rownames('function'), taxa_are_rows = TRUE),
sample_data(metadata))
6.3.2 Data Preprocess (Picrust2)
6.3.2.1 Data transformation (Picrust2)
In this chunk, we use TSS (Total sum scaling) to eliminate the influence of sequencing depth on samples. Alternatively, you can use rarefied 16s data as input for Picrust2 in Run PICRUSt2 to eliminate the sequencing depth differences among samples. If rarefied 16s data is used, please jump to Filter low prevalence pathway chunk directly.
## Normalize into relative abundance
phy_ra <- XMAS2::normalize(object = phy,
method = "TSS")
head(otu_table(phy_ra))
## OTU Table: [6 taxa and 80 samples]
## taxa are rows
## 1-1 1-10 1-2 1-3 1-4 1-5 1-6 1-7 1-8 1-9 2-1_new 2-10
## K00001 2.801193e-05 2.352827e-04 3.410494e-04 2.981510e-04 2.521403e-04 1.462433e-04 1.648275e-04 1.963857e-04 3.363588e-04 3.413925e-04 1.353956e-04 6.023389e-05
## K00002 1.563194e-06 6.892306e-07 0.000000e+00 6.520220e-07 3.973791e-06 9.017681e-06 6.486063e-07 2.622746e-06 1.423588e-05 1.296638e-06 7.880332e-07 0.000000e+00
## K00003 5.882349e-05 5.414758e-04 4.348516e-04 5.585822e-04 4.031793e-04 3.296265e-04 5.910604e-04 6.161407e-04 1.993733e-04 4.586447e-04 2.268970e-04 3.224318e-04
## K00004 4.825403e-05 1.804253e-06 3.207328e-05 7.343876e-05 2.252681e-04 3.484467e-04 5.864164e-06 9.582600e-06 1.654424e-05 1.039398e-05 3.770913e-04 5.266480e-04
## K00005 5.446034e-04 7.385990e-04 1.582553e-04 1.288689e-04 1.021635e-04 1.141010e-04 3.333094e-04 4.739650e-04 3.287658e-04 2.437674e-04 2.125731e-04 1.653722e-05
## K00007 2.639526e-04 6.979609e-07 1.137144e-05 3.740433e-06 8.770615e-06 1.916419e-05 1.243989e-06 4.789362e-06 8.699643e-05 4.924695e-06 1.014229e-04 1.909169e-07
## 2-2 2-3 2-4 2-5 2-6 2-7 2-8 2-9 3-1 3-10 3-2 3-3
## K00001 5.907292e-05 2.576559e-04 4.523432e-04 1.232080e-04 1.517257e-05 1.277041e-04 4.984256e-05 1.716372e-04 1.575852e-05 2.270144e-04 1.800142e-05 8.197794e-05
## K00002 3.365992e-06 3.925466e-06 0.000000e+00 0.000000e+00 0.000000e+00 3.068396e-06 1.962598e-06 1.319294e-07 0.000000e+00 1.258678e-06 3.934802e-07 2.501490e-06
## K00003 3.119649e-04 4.560565e-04 5.157326e-04 4.652668e-04 3.334419e-04 3.431012e-04 3.020624e-04 3.535246e-04 3.073400e-04 4.967000e-04 3.375201e-04 3.099014e-04
## K00004 4.977400e-04 4.566725e-05 1.180069e-04 3.107762e-04 4.161156e-04 4.053490e-04 5.393961e-04 4.138836e-04 5.855666e-04 1.610696e-05 4.410105e-04 4.783356e-04
## K00005 3.381392e-05 1.815468e-04 1.892567e-04 1.256803e-04 1.356316e-04 8.032168e-05 2.701197e-05 3.708588e-05 4.357567e-06 2.184387e-04 9.822658e-05 3.711641e-05
## K00007 7.776132e-06 6.443051e-05 9.933720e-07 1.370426e-06 7.655208e-08 7.140799e-06 4.637565e-06 1.095014e-07 0.000000e+00 4.305092e-06 4.316175e-07 5.396569e-06
## 3-4_new 3-5 3-6_new 3-7 3-8_new 3-9_new 4-1 4-10 4-2 4-3 4-4 4-5
## K00001 3.077143e-04 9.929381e-05 3.183005e-04 9.031339e-05 3.809448e-04 3.381220e-04 4.443248e-04 3.987389e-04 2.494767e-04 4.022330e-04 3.625752e-04 3.767764e-04
## K00002 8.054827e-07 4.007278e-06 1.250764e-05 1.824578e-05 1.149300e-05 1.787713e-05 0.000000e+00 2.963377e-05 0.000000e+00 5.435987e-05 1.125869e-05 2.524214e-05
## K00003 3.480170e-04 3.552392e-04 3.646070e-04 4.905353e-04 2.725523e-04 2.839158e-04 2.215770e-04 1.318855e-04 5.030291e-04 2.329715e-04 1.243619e-04 1.790412e-04
## K00004 1.472944e-04 4.064691e-04 2.340127e-05 2.713088e-06 5.055611e-05 2.509963e-05 1.041433e-06 4.868044e-06 7.478189e-07 0.000000e+00 1.208250e-06 1.730607e-07
## K00005 9.235822e-05 9.796032e-05 2.712632e-04 3.945439e-04 2.380665e-04 2.779120e-04 2.075433e-04 3.201061e-04 1.952181e-04 3.284516e-04 3.358811e-04 3.062440e-04
## K00007 4.522706e-06 7.708340e-06 6.747558e-05 6.457797e-06 5.628157e-05 6.120602e-05 3.225664e-06 9.584652e-05 2.211986e-06 8.080823e-05 1.051268e-04 7.879034e-05
## 4-6 4-7 4-8 4-9 5-1 5-10 5-2 5-3 5-4 5-5 5-6 5-7
## K00001 3.729072e-04 3.448071e-04 3.896673e-04 3.834663e-04 4.033027e-04 2.959880e-04 4.087573e-04 4.050189e-04 3.946021e-04 4.080849e-04 2.609576e-04 2.577150e-04
## K00002 3.131680e-05 3.836583e-05 4.212479e-05 5.350141e-05 4.368152e-05 0.000000e+00 7.699658e-05 4.663647e-05 5.940301e-05 4.823012e-05 3.671900e-06 0.000000e+00
## K00003 1.493342e-04 1.605448e-04 1.789473e-04 2.281239e-04 1.946265e-04 4.143785e-04 3.282582e-04 1.880710e-04 2.407660e-04 1.952125e-04 4.588675e-04 4.502841e-04
## K00004 5.170123e-06 4.663991e-06 5.287480e-06 4.613319e-06 0.000000e+00 2.626389e-06 1.975581e-07 4.469235e-08 1.406226e-07 2.124675e-07 1.919948e-06 1.807144e-06
## K00005 3.879193e-04 3.463381e-04 3.378498e-04 3.437203e-04 3.206414e-04 2.681012e-04 3.493623e-04 3.356329e-04 3.419172e-04 3.332159e-04 3.309142e-04 3.207012e-04
## K00007 1.370092e-04 9.260565e-05 1.000925e-04 9.197309e-05 8.000937e-05 1.511000e-07 8.001649e-05 9.313641e-05 9.010735e-05 9.114881e-05 3.427586e-06 1.325239e-07
## 5-8 5-9_new 6-1 6-10 6-2 6-3 6-4_new 6-5_new 6-6 6-7_new 6-8_new 6-9
## K00001 3.662952e-04 3.876332e-04 7.037032e-05 1.451313e-05 3.643616e-05 1.365941e-05 2.453076e-04 1.835822e-04 7.841405e-05 3.599708e-04 3.138890e-04 1.625962e-05
## K00002 0.000000e+00 4.069377e-06 0.000000e+00 1.124980e-06 4.201587e-07 0.000000e+00 3.326461e-06 3.152399e-06 1.655660e-06 2.411901e-05 9.462389e-06 0.000000e+00
## K00003 3.586722e-04 3.496403e-04 3.262294e-04 3.124178e-04 3.154712e-04 3.066748e-04 3.927571e-04 3.414471e-04 3.272777e-04 2.750149e-04 3.519592e-04 3.911163e-04
## K00004 1.132355e-05 4.769824e-06 4.654508e-04 5.770672e-04 5.513182e-04 5.770972e-04 1.420569e-04 2.478457e-04 4.855194e-04 3.779726e-05 1.092407e-04 2.600053e-04
## K00005 2.755819e-04 2.159414e-04 6.198311e-05 5.947294e-06 7.006146e-06 6.009488e-06 1.395370e-04 1.671215e-04 3.570345e-05 2.494529e-04 1.680123e-04 2.352966e-04
## K00007 2.097047e-06 1.336276e-05 0.000000e+00 8.466953e-08 0.000000e+00 1.022051e-07 7.576373e-06 1.087598e-05 1.236036e-07 5.995295e-05 2.778458e-05 1.397255e-07
## 7-1 7-10 7-2 7-3 7-4 7-5 7-6 7-7 7-8 7-9 8-1 8-10
## K00001 4.770528e-04 5.847251e-04 2.983688e-04 3.903168e-04 4.311137e-04 5.655906e-04 4.123612e-04 0.0003666980 3.938285e-04 5.193777e-04 4.405701e-04 3.523975e-04
## K00002 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00
## K00003 3.449595e-04 2.181463e-04 4.160755e-04 4.313456e-04 4.230419e-04 3.964725e-04 4.477072e-04 0.0004841959 5.374377e-04 2.688634e-04 3.702856e-04 4.053584e-04
## K00004 1.076994e-06 7.754245e-07 1.396878e-06 0.000000e+00 8.829937e-07 7.029158e-07 2.738155e-06 0.0000000000 1.496840e-06 3.837498e-07 9.076955e-07 9.656659e-07
## K00005 9.101193e-05 2.560839e-05 9.804024e-05 7.757321e-05 4.036801e-05 5.787641e-05 1.157033e-04 0.0001327769 9.054445e-05 3.503182e-05 4.508199e-05 9.901857e-05
## K00007 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00 4.052212e-08 0.000000e+00
## 8-2 8-3 8-4 8-5 8-6 8-7 8-8 8-9
## K00001 5.024012e-04 3.705616e-04 4.364260e-04 3.945743e-04 5.142765e-04 4.992422e-04 4.641715e-04 3.800689e-04
## K00002 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.010049e-07
## K00003 3.925587e-04 4.524587e-04 5.368756e-04 4.423218e-04 3.051415e-04 2.686240e-04 3.508427e-04 5.288532e-04
## K00004 6.021716e-07 1.985848e-07 2.049126e-07 7.797750e-07 0.000000e+00 2.467459e-07 4.846931e-07 0.000000e+00
## K00005 5.545355e-05 1.542305e-04 1.772590e-04 1.166953e-04 3.857103e-05 4.328334e-05 3.921410e-05 1.153191e-04
## K00007 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.088959e-07
6.3.2.2 Aggregate low abundance data (Picrust2)
In this chunck, we aggregate low abundance features to one row. Note: you need to transform your data before running this chunk!!
1e-12 is an empirical threshold fot filtering low abundance feature. According to published paper Obese Individuals with and without Type 2 Diabetes Show Different Gut Microbial Functional Capacity and Composition
pathway with top 50% mean abundance and top 50% variance are left. But in MaAsLin2,pathway with abundance less than 10-10 are filtered by default.
source("/share/projects/SOP/Functional_Analysis/Tongbangzhuo/Phase1/Kegg/Scripts/R/ultility.R")
filtered_KO_profile <- aggregate_low_abundance(input_data = otu_table(phy_ra) %>% as.data.frame(),
threshold = 1e-12) ## threshold should be modified based on your on study
dim(filtered_KO_profile)
## [1] 7287 80
6.3.2.3 Filter low prevalence pathway (Picrust2)
In this chunk, we remove pathways appearing in less than 5% of samples from data set before doing analysis.
Note: Run Data transformation and Aggregate low abundance data before running this chunk!
## Filter features whose frequency are less than 0.05.
filtered_phy_ra <- XMAS2::run_trim(object = filtered_phy_ra, cutoff = 0.05, trim = "feature")
dim(otu_table(filtered_phy_ra))
## [1] 6542 80
6.3.2.4 Run DA
Run CLR transformed wilcoxon DA.
Remember to Preprocess your data before running this chunk!
## Run DA
DA_res <- XMAS2::run_wilcox(
ps = filtered_phy_ra,
group = "Group2",
group_names = c("Baseline", "Treatment"),
norm = "CLR")
head(DA_res)
## TaxaID Block Enrichment EffectSize Statistic Pvalue AdjustedPvalue Log2FoldChange (Median)\nBaseline_vs_Treatment Median Abundance\n(All)
## 1 K00001 20_Baseline vs 30_Treatment Nonsignif 0.03408348 400 0.0481294633 0.084008024 NaN -0.1482320
## 2 K00002 20_Baseline vs 30_Treatment Treatment 0.00000000 153 0.0015758495 0.007121667 NA 0.0000000
## 3 K00003 20_Baseline vs 30_Treatment Baseline 0.38917933 469 0.0005871079 0.004360078 4.053116 0.4637099
## 4 K00004 20_Baseline vs 30_Treatment Baseline 0.13210957 424 0.0144350133 0.032641111 -6.455651 -0.6159066
## 5 K00005 20_Baseline vs 30_Treatment Baseline 0.30350692 487 0.0001205459 0.001902819 NaN -1.2776484
## 6 K00007 20_Baseline vs 30_Treatment Treatment 0.17518023 148 0.0019300012 0.007987687 NA -1.0353115
## Median Abundance\nBaseline Median Abundance\nTreatment Log2FoldChange (Rank)\nBaseline_vs_Treatment Mean Rank Abundance\nBaseline Mean Rank Abundance\nTreatment
## 1 0.49958520 -0.64810011 0.4602005 30.50 22.17
## 2 -3.82423193 0.00000000 -0.7441018 18.15 30.40
## 3 0.93270253 0.05618674 0.7728197 33.95 19.87
## 4 -0.05899854 -5.17828202 0.5688959 31.70 21.37
## 5 0.10889870 -1.87146624 0.8548021 34.85 19.27
## 6 -3.66474858 0.00000000 -0.7721570 17.90 30.57
## Occurrence (100%)\n(All) Occurrence (100%)\nBaseline Occurrence (100%)\nTreatment Odds Ratio (95% CI)
## 1 100 100 100.00 0.57 (-0.51;1.7)
## 2 46 75 26.67 0.39 (-1.5;2.2)
## 3 100 100 100.00 0.28 (-2.3;2.8)
## 4 92 100 86.67 0.23 (-2.7;3.1)
## 5 100 100 100.00 0.23 (-2.6;3.1)
## 6 60 100 33.33 0.18 (-3.2;3.6)
6.3.2.5 Visualize DA result
## Read in description for
ID_Description_Mapping <- read.table('/share/projects/SOP/Functional_Analysis/Tongbangzhuo/Demodata/PICRUSt2/output/KO_metagenome_out/pred_metagenome_unstrat_descrip.tsv',
sep = '\t', comment.char = '', na.strings = '', quote = '', header = TRUE, check.names = FALSE) %>% .[, c(1,2)] %>% column_to_rownames('function')
renames_DA_res <- DA_res %>% dplyr::mutate(TaxaID = ID_Description_Mapping[DA_res$TaxaID,] %>% as.vector())
## Volcano plot
p <- XMAS2::plot_volcano(
da_res = DA_res,
group_names = c("Baseline", "Treatment"),
x_index = "Log2FoldChange (Rank)\nBaseline_vs_Treatment",
x_index_cutoff = 0.5,
y_index = "AdjustedPvalue",
y_index_cutoff = 0.05,
group_color = c("red", "grey", "blue"),
topN = 5,
taxa_name = NULL)
p
filtered_DA_res <- DA_res %>% dplyr::arrange(`AdjustedPvalue`, `Log2FoldChange (Rank)\nBaseline_vs_Treatment`) %>%
dplyr::filter(`AdjustedPvalue` < 0.05) %>% dplyr::filter(abs(`Log2FoldChange (Rank)\nBaseline_vs_Treatment`) >
0.5)
top_features <- filtered_DA_res[order(filtered_DA_res$AdjustedPvalue), ] %>% head(5) %>% .$TaxaID
## Boxplot
filtered_pf <- otu_table(filtered_phy_ra) %>% as.data.frame() %>% .[top_features, ] %>% rownames_to_column('feature') %>% dplyr::mutate(feature = ID_Description_Mapping[top_features, ]) %>% column_to_rownames('feature') %>% t() %>% as.data.frame()
filtered_pf %<>% cbind(., metadata)
XMAS2::plot_boxplot(data = filtered_pf,
y_index = ID_Description_Mapping[top_features, ] %>% as.vector(),
group = "Group2",
group_names = c('Treatment','Baseline'),
do_test = TRUE,
method = "wilcox.test")
Same analysis can be applied to the EC profile, KEGG pathway profile as well as Metacyc pathway profile.
6.4 Session info
## ─ Session info ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## setting value
## version R version 3.6.3 (2020-02-29)
## os Ubuntu 16.04.7 LTS
## system x86_64, linux-gnu
## ui RStudio
## language (EN)
## collate en_IN.UTF-8
## ctype en_IN.UTF-8
## tz Asia/Hong_Kong
## date 2022-11-09
## rstudio 1.1.419 (server)
## pandoc 2.7.3 @ /usr/bin/ (via rmarkdown)
##
## ─ Packages ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## ! package * version date (UTC) lib source
## abind 1.4-5 2016-07-21 [1] CRAN (R 3.6.3)
## ade4 1.7-17 2021-06-17 [1] CRAN (R 3.6.3)
## ALDEx2 * 1.18.0 2019-10-29 [1] Bioconductor
## annotate 1.64.0 2019-10-29 [1] Bioconductor
## AnnotationDbi * 1.58.0 2022-04-26 [1] Bioconductor
## ape 5.5 2021-04-25 [1] CRAN (R 3.6.3)
## assertthat 0.2.1 2019-03-21 [2] CRAN (R 3.6.3)
## backports 1.4.1 2021-12-13 [1] CRAN (R 3.6.3)
## base64enc 0.1-3 2015-07-28 [2] CRAN (R 3.6.3)
## bayesm 3.1-4 2019-10-15 [1] CRAN (R 3.6.3)
## biglm 0.9-2.1 2020-11-27 [1] CRAN (R 3.6.3)
## Biobase * 2.46.0 2019-10-29 [2] Bioconductor
## BiocGenerics * 0.32.0 2019-10-29 [2] Bioconductor
## BiocParallel * 1.20.1 2019-12-21 [2] Bioconductor
## biomformat 1.14.0 2019-10-29 [1] Bioconductor
## Biostrings 2.54.0 2019-10-29 [1] Bioconductor
## bit 4.0.4 2020-08-04 [1] CRAN (R 3.6.3)
## bit64 4.0.5 2020-08-30 [1] CRAN (R 3.6.3)
## bitops 1.0-7 2021-04-24 [1] CRAN (R 3.6.3)
## blob 1.2.2 2021-07-23 [1] CRAN (R 3.6.3)
## bookdown 0.24 2021-09-02 [1] CRAN (R 3.6.3)
## brio 1.1.3 2021-11-30 [2] CRAN (R 3.6.3)
## broom 0.7.12 2022-01-28 [1] CRAN (R 3.6.3)
## bslib 0.3.1 2021-10-06 [1] CRAN (R 3.6.3)
## cachem 1.0.5 2021-05-15 [1] CRAN (R 3.6.3)
## callr 3.7.0 2021-04-20 [2] CRAN (R 3.6.3)
## car 3.0-12 2021-11-06 [1] CRAN (R 3.6.3)
## carData 3.0-4 2020-05-22 [1] CRAN (R 3.6.3)
## caTools 1.18.2 2021-03-28 [1] CRAN (R 3.6.3)
## cellranger 1.1.0 2016-07-27 [1] CRAN (R 3.6.3)
## checkmate 2.0.0 2020-02-06 [1] CRAN (R 3.6.3)
## circlize * 0.4.13 2021-06-09 [1] CRAN (R 3.6.3)
## cli 3.1.0 2021-10-27 [1] CRAN (R 3.6.3)
## clue 0.3-59 2021-04-16 [1] CRAN (R 3.6.3)
## cluster 2.1.0 2019-06-19 [2] CRAN (R 3.6.3)
## coda 0.19-4 2020-09-30 [1] CRAN (R 3.6.3)
## codetools 0.2-16 2018-12-24 [2] CRAN (R 3.6.3)
## coin 1.4-2 2021-10-08 [1] CRAN (R 3.6.3)
## colorspace 2.0-2 2021-06-24 [1] CRAN (R 3.6.3)
## ComplexHeatmap * 2.2.0 2019-10-29 [1] Bioconductor
## compositions 2.0-2 2021-07-14 [1] CRAN (R 3.6.3)
## cowplot * 1.1.1 2020-12-30 [1] CRAN (R 3.6.3)
## crayon 1.5.0 2022-02-14 [1] CRAN (R 3.6.3)
## curl 4.3.2 2021-06-23 [2] CRAN (R 3.6.3)
## dada2 * 1.14.1 2020-02-22 [1] Bioconductor
## data.table * 1.14.0 2021-02-21 [1] CRAN (R 3.6.3)
## DBI 1.1.1 2021-01-15 [1] CRAN (R 3.6.3)
## dbplyr 2.1.1 2021-04-06 [1] CRAN (R 3.6.3)
## DelayedArray * 0.12.3 2020-04-09 [2] Bioconductor
## DelayedMatrixStats 1.8.0 2019-10-29 [1] Bioconductor
## DEoptimR 1.0-9 2021-05-24 [1] CRAN (R 3.6.3)
## desc 1.4.1 2022-03-06 [2] CRAN (R 3.6.3)
## DESeq2 * 1.26.0 2019-10-29 [1] Bioconductor
## devtools 2.4.3 2021-11-30 [1] CRAN (R 3.6.3)
## digest 0.6.29 2021-12-01 [1] CRAN (R 3.6.3)
## dplyr * 1.0.6 2021-05-05 [1] CRAN (R 3.6.3)
## edgeR 3.28.1 2020-02-26 [1] Bioconductor
## ellipsis 0.3.2 2021-04-29 [1] CRAN (R 3.6.3)
## EnhancedVolcano * 1.4.0 2019-10-29 [1] Bioconductor
## enrichR * 3.0 2021-02-02 [1] CRAN (R 3.6.3)
## evaluate 0.15 2022-02-18 [2] CRAN (R 3.6.3)
## fansi 1.0.2 2022-01-14 [1] CRAN (R 3.6.3)
## farver 2.1.0 2021-02-28 [2] CRAN (R 3.6.3)
## fastmap 1.1.0 2021-01-25 [1] CRAN (R 3.6.3)
## fdrtool 1.2.17 2021-11-13 [1] CRAN (R 3.6.3)
## forcats * 0.5.1 2021-01-27 [1] CRAN (R 3.6.3)
## foreach 1.5.2 2022-02-02 [2] CRAN (R 3.6.3)
## foreign 0.8-75 2020-01-20 [2] CRAN (R 3.6.3)
## formatR 1.12 2022-03-31 [2] CRAN (R 3.6.3)
## Formula 1.2-4 2020-10-16 [1] CRAN (R 3.6.3)
## fs 1.5.2 2021-12-08 [1] CRAN (R 3.6.3)
## futile.logger 1.4.3 2016-07-10 [2] CRAN (R 3.6.3)
## futile.options 1.0.1 2018-04-20 [2] CRAN (R 3.6.3)
## genefilter 1.68.0 2019-10-29 [1] Bioconductor
## geneplotter 1.64.0 2019-10-29 [1] Bioconductor
## generics 0.1.2 2022-01-31 [1] CRAN (R 3.6.3)
## GenomeInfoDb * 1.22.1 2020-03-27 [2] Bioconductor
## GenomeInfoDbData 1.2.2 2020-08-24 [2] Bioconductor
## GenomicAlignments 1.22.1 2019-11-12 [1] Bioconductor
## GenomicRanges * 1.38.0 2019-10-29 [2] Bioconductor
## getopt 1.20.3 2019-03-22 [1] CRAN (R 3.6.3)
## GetoptLong 1.0.5 2020-12-15 [1] CRAN (R 3.6.3)
## GGally * 2.1.2 2021-06-21 [1] CRAN (R 3.6.3)
## ggbipart * 0.1.2 2022-07-20 [1] Github (pedroj/bipartite_plots@162f577)
## ggExtra * 0.9 2019-08-27 [1] CRAN (R 3.6.3)
## ggplot2 * 3.3.5 2021-06-25 [1] CRAN (R 3.6.3)
## ggpubr * 0.4.0 2020-06-27 [1] CRAN (R 3.6.3)
## ggrepel * 0.9.1 2021-01-15 [2] CRAN (R 3.6.3)
## ggsci * 2.9 2018-05-14 [1] CRAN (R 3.6.3)
## ggsignif 0.6.3 2021-09-09 [1] CRAN (R 3.6.3)
## glmnet 4.1-2 2021-06-24 [1] CRAN (R 3.6.3)
## GlobalOptions 0.1.2 2020-06-10 [1] CRAN (R 3.6.3)
## glue 1.6.1 2022-01-22 [1] CRAN (R 3.6.3)
## GMPR 0.1.3 2021-05-17 [1] local
## gplots 3.1.1 2020-11-28 [1] CRAN (R 3.6.3)
## graph 1.64.0 2019-10-29 [1] Bioconductor
## gridExtra 2.3 2017-09-09 [2] CRAN (R 3.6.3)
## gtable 0.3.0 2019-03-25 [2] CRAN (R 3.6.3)
## gtools 3.9.2 2021-06-06 [1] CRAN (R 3.6.3)
## haven 2.4.1 2021-04-23 [1] CRAN (R 3.6.3)
## highr 0.9 2021-04-16 [1] CRAN (R 3.6.3)
## Hmisc 4.5-0 2021-02-28 [1] CRAN (R 3.6.3)
## hms 1.1.1 2021-09-26 [1] CRAN (R 3.6.3)
## htmlTable 2.3.0 2021-10-12 [1] CRAN (R 3.6.3)
## htmltools 0.5.2 2021-08-25 [1] CRAN (R 3.6.3)
## htmlwidgets 1.5.4 2021-09-08 [2] CRAN (R 3.6.3)
## httpuv 1.6.1 2021-05-07 [1] CRAN (R 3.6.3)
## httr 1.4.3 2022-05-04 [2] CRAN (R 3.6.3)
## hwriter 1.3.2 2014-09-10 [1] CRAN (R 3.6.3)
## igraph 1.3.1 2022-04-20 [2] CRAN (R 3.6.3)
## IHW 1.14.0 2019-10-29 [1] Bioconductor
## IRanges * 2.20.2 2020-01-13 [2] Bioconductor
## iterators 1.0.14 2022-02-05 [2] CRAN (R 3.6.3)
## jpeg 0.1-9 2021-07-24 [1] CRAN (R 3.6.3)
## jquerylib 0.1.4 2021-04-26 [1] CRAN (R 3.6.3)
## jsonlite 1.8.0 2022-02-22 [2] CRAN (R 3.6.3)
## KEGGgraph 1.46.0 2019-10-29 [1] Bioconductor
## KEGGREST 1.26.1 2019-11-06 [1] Bioconductor
## KernSmooth 2.23-16 2019-10-15 [2] CRAN (R 3.6.3)
## knitr 1.36 2021-09-29 [1] CRAN (R 3.6.3)
## labeling 0.4.2 2020-10-20 [2] CRAN (R 3.6.3)
## lambda.r 1.2.4 2019-09-18 [2] CRAN (R 3.6.3)
## later 1.3.0 2021-08-18 [2] CRAN (R 3.6.3)
## lattice * 0.20-38 2018-11-04 [2] CRAN (R 3.6.3)
## latticeExtra 0.6-29 2019-12-19 [1] CRAN (R 3.6.3)
## lazyeval 0.2.2 2019-03-15 [2] CRAN (R 3.6.3)
## libcoin 1.0-9 2021-09-27 [1] CRAN (R 3.6.3)
## lifecycle 1.0.1 2021-09-24 [1] CRAN (R 3.6.3)
## limma 3.42.2 2020-02-03 [2] Bioconductor
## locfit 1.5-9.4 2020-03-25 [1] CRAN (R 3.6.3)
## lpsymphony 1.14.0 2019-10-29 [1] Bioconductor (R 3.6.3)
## lubridate 1.7.10 2021-02-26 [1] CRAN (R 3.6.3)
## Maaslin2 1.7.3 2022-03-23 [1] Github (biobakery/maaslin2@8d090e4)
## magrittr * 2.0.2 2022-01-26 [1] CRAN (R 3.6.3)
## MASS 7.3-54 2021-05-03 [1] CRAN (R 3.6.3)
## Matrix 1.3-4 2021-06-01 [1] CRAN (R 3.6.3)
## matrixStats * 0.60.0 2021-07-26 [1] CRAN (R 3.6.3)
## mbzinb 0.2 2021-06-23 [1] local
## memoise 2.0.1 2021-11-26 [2] CRAN (R 3.6.3)
## metagenomeSeq 1.28.2 2020-02-03 [1] Bioconductor
## metamicrobiomeR 1.1 2021-02-03 [1] local
## mgcv 1.8-31 2019-11-09 [2] CRAN (R 3.6.3)
## microbiome 1.8.0 2019-10-29 [1] Bioconductor
## mime 0.12 2021-09-28 [2] CRAN (R 3.6.3)
## miniUI 0.1.1.1 2018-05-18 [1] CRAN (R 3.6.3)
## modelr 0.1.8 2020-05-19 [1] CRAN (R 3.6.3)
## modeltools 0.2-23 2020-03-05 [1] CRAN (R 3.6.3)
## multcomp 1.4-17 2021-04-29 [1] CRAN (R 3.6.3)
## multtest 2.42.0 2019-10-29 [2] Bioconductor
## munsell 0.5.0 2018-06-12 [2] CRAN (R 3.6.3)
## mvtnorm 1.1-3 2021-10-08 [1] CRAN (R 3.6.3)
## network * 1.17.1 2021-06-14 [1] CRAN (R 3.6.3)
## nlme 3.1-144 2020-02-06 [2] CRAN (R 3.6.3)
## nnet 7.3-12 2016-02-02 [2] CRAN (R 3.6.3)
## optparse 1.7.1 2021-10-08 [1] CRAN (R 3.6.3)
## org.Hs.eg.db * 3.10.0 2021-12-08 [1] Bioconductor
## pathview * 1.26.0 2019-10-29 [1] Bioconductor
## pcaPP 1.9-74 2021-04-23 [1] CRAN (R 3.6.3)
## permute * 0.9-5 2019-03-12 [1] CRAN (R 3.6.3)
## phyloseq * 1.30.0 2019-10-29 [1] Bioconductor
## pillar 1.7.0 2022-02-01 [1] CRAN (R 3.6.3)
## pkgbuild 1.3.1 2021-12-20 [2] CRAN (R 3.6.3)
## pkgconfig 2.0.3 2019-09-22 [2] CRAN (R 3.6.3)
## pkgload 1.2.4 2021-11-30 [2] CRAN (R 3.6.3)
## plotly * 4.10.0 2021-10-09 [1] CRAN (R 3.6.3)
## plyr 1.8.7 2022-03-24 [2] CRAN (R 3.6.3)
## png 0.1-7 2013-12-03 [1] CRAN (R 3.6.3)
## prettyunits 1.1.1 2020-01-24 [2] CRAN (R 3.6.3)
## processx 3.5.3 2022-03-25 [2] CRAN (R 3.6.3)
## promises 1.2.0.1 2021-02-11 [2] CRAN (R 3.6.3)
## protoclust 1.6.3 2019-01-31 [1] CRAN (R 3.6.3)
## ps 1.7.0 2022-04-23 [2] CRAN (R 3.6.3)
## pscl 1.5.5 2020-03-07 [1] CRAN (R 3.6.3)
## purrr * 0.3.4 2020-04-17 [2] CRAN (R 3.6.3)
## qvalue 2.18.0 2019-10-29 [1] Bioconductor
## R6 2.5.1 2021-08-19 [1] CRAN (R 3.6.3)
## RAIDA 1.0 2021-06-23 [1] local
## ranacapa 0.1.0 2021-06-18 [1] Github (gauravsk/ranacapa@58c0cab)
## RColorBrewer * 1.1-3 2022-04-03 [2] CRAN (R 3.6.3)
## Rcpp * 1.0.7 2021-07-07 [1] CRAN (R 3.6.3)
## RcppParallel 5.1.4 2021-05-04 [1] CRAN (R 3.6.3)
## RCurl 1.98-1.6 2022-02-08 [2] CRAN (R 3.6.3)
## readr * 2.0.0 2021-07-20 [1] CRAN (R 3.6.3)
## readxl * 1.3.1 2019-03-13 [1] CRAN (R 3.6.3)
## remotes 2.4.2 2021-11-30 [1] CRAN (R 3.6.3)
## reprex 2.0.1 2021-08-05 [1] CRAN (R 3.6.3)
## reshape 0.8.9 2022-04-12 [1] CRAN (R 3.6.3)
## reshape2 * 1.4.4 2020-04-09 [2] CRAN (R 3.6.3)
## Rgraphviz 2.30.0 2019-10-29 [1] Bioconductor
## rhdf5 2.30.1 2019-11-26 [1] Bioconductor
## Rhdf5lib 1.8.0 2019-10-29 [1] Bioconductor
## rJava 1.0-5 2021-09-24 [1] CRAN (R 3.6.3)
## rjson 0.2.20 2018-06-08 [1] CRAN (R 3.6.3)
## R rlang 1.0.2 <NA> [2] <NA>
## rmarkdown 2.11 2021-09-14 [1] CRAN (R 3.6.3)
## robustbase 0.93-9 2021-09-27 [1] CRAN (R 3.6.3)
## rpart 4.1-15 2019-04-12 [2] CRAN (R 3.6.3)
## rprojroot 2.0.2 2020-11-15 [1] CRAN (R 3.6.3)
## Rsamtools 2.2.3 2020-02-23 [1] Bioconductor
## RSQLite 2.2.7 2021-04-22 [1] CRAN (R 3.6.3)
## rstatix 0.7.0 2021-02-13 [1] CRAN (R 3.6.3)
## rstudioapi 0.13 2020-11-12 [2] CRAN (R 3.6.3)
## Rtsne 0.15 2018-11-10 [1] CRAN (R 3.6.3)
## rvest 1.0.2 2021-10-16 [1] CRAN (R 3.6.3)
## S4Vectors * 0.24.4 2020-04-09 [2] Bioconductor
## sandwich 3.0-1 2021-05-18 [1] CRAN (R 3.6.3)
## sass 0.4.0 2021-05-12 [1] CRAN (R 3.6.3)
## scales 1.2.0 2022-04-13 [2] CRAN (R 3.6.3)
## seqinr * 4.2-8 2021-06-09 [1] CRAN (R 3.6.3)
## sessioninfo 1.2.2 2021-12-06 [2] CRAN (R 3.6.3)
## shape 1.4.6 2021-05-19 [1] CRAN (R 3.6.3)
## shiny 1.7.1 2021-10-02 [1] CRAN (R 3.6.3)
## ShortRead 1.44.3 2020-02-03 [1] Bioconductor
## slam 0.1-49 2021-11-17 [1] CRAN (R 3.6.3)
## sna 2.6 2020-10-06 [1] CRAN (R 3.6.3)
## statnet.common 4.5.0 2021-06-05 [1] CRAN (R 3.6.3)
## stringi 1.7.4 2021-08-25 [1] CRAN (R 3.6.3)
## stringr * 1.4.0 2019-02-10 [2] CRAN (R 3.6.3)
## SummarizedExperiment * 1.16.1 2019-12-19 [2] Bioconductor
## survival 3.1-8 2019-12-03 [2] CRAN (R 3.6.3)
## tensorA 0.36.2 2020-11-19 [1] CRAN (R 3.6.3)
## testthat 3.1.4 2022-04-26 [2] CRAN (R 3.6.3)
## textshape 1.7.3 2021-05-28 [1] CRAN (R 3.6.3)
## TH.data 1.1-0 2021-09-27 [1] CRAN (R 3.6.3)
## tibble * 3.1.6 2021-11-07 [1] CRAN (R 3.6.3)
## tidyr * 1.2.0 2022-02-01 [1] CRAN (R 3.6.3)
## tidyselect 1.1.1 2021-04-30 [1] CRAN (R 3.6.3)
## tidyverse * 1.3.1 2021-04-15 [1] CRAN (R 3.6.3)
## tzdb 0.2.0 2021-10-27 [1] CRAN (R 3.6.3)
## UpSetR 1.4.0 2019-05-22 [1] CRAN (R 3.6.3)
## usethis 2.1.6 2022-05-25 [2] CRAN (R 3.6.3)
## utf8 1.2.2 2021-07-24 [1] CRAN (R 3.6.3)
## vctrs 0.3.8 2021-04-29 [1] CRAN (R 3.6.3)
## vegan * 2.5-7 2020-11-28 [1] CRAN (R 3.6.3)
## VennDiagram 1.7.1 2021-12-02 [1] CRAN (R 3.6.3)
## viridisLite 0.4.0 2021-04-13 [2] CRAN (R 3.6.3)
## vroom 1.5.7 2021-11-30 [1] CRAN (R 3.6.3)
## wesanderson * 0.3.6.9000 2021-07-21 [1] Github (karthik/wesanderson@651c944)
## withr 2.4.3 2021-11-30 [1] CRAN (R 3.6.3)
## Wrench 1.4.0 2019-10-29 [1] Bioconductor
## xfun 0.23 2021-05-15 [1] CRAN (R 3.6.3)
## xlsx * 0.6.5 2020-11-10 [1] CRAN (R 3.6.3)
## xlsxjars 0.6.1 2014-08-22 [1] CRAN (R 3.6.3)
## XMAS * 0.0.0.9000 2022-03-23 [1] local
## XMAS2 2.1.8.3 2022-11-08 [2] local
## XML 3.99-0.3 2020-01-20 [1] CRAN (R 3.6.3)
## xml2 1.3.3 2021-11-30 [2] CRAN (R 3.6.3)
## xtable 1.8-4 2019-04-21 [1] CRAN (R 3.6.3)
## XVector 0.26.0 2019-10-29 [2] Bioconductor
## xviz * 1.1.0 2021-01-14 [1] local
## yaml 2.2.2 2022-01-25 [1] CRAN (R 3.6.3)
## zlibbioc 1.32.0 2019-10-29 [2] Bioconductor
## zoo 1.8-9 2021-03-09 [1] CRAN (R 3.6.3)
##
## [1] /share/home/tongbangzhuo/R/x86_64-pc-linux-gnu-library/3.6
## [2] /opt/R-3.6.3/lib/R/library
##
## R ── Package was removed from disk.
##
## ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────