PsN环境配置与安装

Bioinformatics · 前天
Perl-speaks-NONMEM (PsN) is a collection of Perl modules and programs aiding in the development of non-linear mixed effect models using NONMEM. The functionality ranges from solutions to simpler tasks such as parameter estimate extraction from output files, data file sub setting and resampling, to advanced computer-intensive statistical methods. PsN includes stand-alone tools for the end-user as well as development libraries for method developers.

安装步骤:

  1. 安装系统环境依赖:

    sudo apt update
    sudo apt install -y \ r-base \ pandoc \ libssl-dev \ libcurl4-openssl-dev \ libmariadb-dev \ libgmp-dev \ libmpfr-dev \ libxml2-dev \ libudunits2-dev \ libblas-dev \ liblapack-dev \ libmagick++-dev
  2. 安装Perl附属依赖:直接一个指令,换源,不然直接一个个安装很慢:

    sudo cpan -i -M https://mirrors.tuna.tsinghua.edu.cn/CPAN/ Mouse MouseX::Params::Validate Archive::Zip YAML Capture::Tiny File::Copy::Recursive File::HomeDir Math::SigFigs Statistics::Distributions

    安装PsN

  3. 安装PsN:解压安装包tar -xvf PsN-5.6.0.tar.gz,cd到文件夹,输入sudo perl setup.pl,安装过程中建议全部默认,直接按回车和输入y,系统会自动找nonmem的安装路径,在是否要添加另一个nonmem环境时输入n,其他全部默认

常用功能与指令:

  • 准备文件:.mod模型文件,.csv数据文件,.scm描述文件,放在同一个目录下
  • vpc -samples=1000 -no_of_bins=8 -bin_by_count=1 -dir=\<dir\> \<.mod\>
  • scm -config_file=\<.scm\> -model=\<.mod\>
  • bootstrap -samples=50 -threads=4 -dir=\<dir\> \<.mod\>

踩坑:

  1. .mod文件中的数据路径要改成./MDATA.csv,写成相对路径的同时.csv不能是大写,因为文件名里是小写的,而linux命令行区分大小写
  2. 部署docker时需要同步安装nonmem和PsN,如果挂载宿主机安装的模型会经常报错找不到相应的附属依赖,而且路径挂载映射也比较麻烦,不如直接安装,但PsN安装过程中涉及到交互,所以使用dockerfile在build时安装也比较麻烦,可以进入到docker的bash界面手动安装,但就要注意重启后失效
  3. 遇到PsN安装过程中下载包比较慢的问题,需要改其环境下的pip源,地址为:/usr/local/share/perl/5.32.1/PsN_5_6_0/pyvenv/bin/python -m pip install --upgrade pip