3p97使用过程中踩的坑

近期受人之托,分析一些陌生领域的数据。分析软件有很多,但对方指定要求使用3p97进行分析,但是却没有这个软件。我花费很长时间、很大力气、付出了一定的代价才下载到此软件。现将我和委托人在使用过程中踩到的几个坑进行叙述,希望后来者不要再踩这些坑。

(一)3p97如何运行

3p97是由药理学会数学专业委员会(The Chinese society of mathematical pharmacology)研发的软件,最新版本发布于1997年,包含3p87、生物等效性、生物利用度、吸收动力学四个程序,仅可以在DOS系统下使用,且必须在软驱中运行。网上有人说可以在Windows下运行(也就是非软驱),但本人亲测不行,会提示Disk media error。

3p97无法在非软驱中运行

图1 3p97无法在非软驱中运行,运行环境:freedos(开源)

目前,有个简单的办法是使用DosBox进行模拟。我的电脑是Linux系统,版本是Debian,可直接在软件仓库中安装DosBox。Ubuntu雷同。针对其他Linux版本、FreeBSD、Solaris、Windows、MacOS等系统的版本,可在官网进行下载。注意:该软件为开源软件,授权协议是GPL v2。

DosBox的安装

图2 DosBox的安装(Debian下,Ubuntu雷同)

我将3P97文件夹放在用户文件夹内,其路径为~/,也就是/home/username/

第一步:打开DosBox,输入命令

mount a ~/3P97

即可将3P97文件夹挂载到DOS系统的A:\下面。注意:(1)必须挂载到A:\下面,因为它只能在软驱内运行。(2)如果将3P97文件夹放在宿主机其他路径下,则将上述命令中的路径部分修改一下即可。(3)输入命令时,3P97中的P大小写不能错,且斜杠方向不能错,Linux下斜杠是正斜杠(/),不是反斜杠(\)。(4)软件文件夹如改名,注意新文件夹名字不能包含非英文字符和标点,尤其是千万不能包含中文文字和中文标点。

如果在Windows下运行DosBox,使用方法一致,在此不再赘述。

第二步:输入命令

a:

即可切换到A:\下。

第三步:输入命令

3p97.exe

即可打开软件。接下来按提示操作即可。

3p97挂载和打开过程

图3 3p97挂载和打开过程

(二)数据录入问题

由于3p97是针对DOS系统开发的,且在1997年以后就再也没有更新,所以它的设计在今天看来非常反人类,使用时需要有耐心,不过在当时已经是很先进了。录入数据时,要先录入主数据,再录入各subject的数据。不是我故意跟你玩英文,而是因为软件就是英文的。

主数据是什么?网上各种教程都叫它“主数据”,但没有解释什么是主数据。实际上就是各个subject数据的平均值。录入主数据后,软件会让你依次录入各个subject的数据。如果设置的subject数量是4,则一共录入5组数据。录入结束后,会自动返回Main Menu。如果某个subject缺少或增加时间点,一定要将时间点数量进行变更,否则计算时会出现问题。

录入数据前,一定要选择对应的给药方式,而且不能选错。软件提供了三种给药方式:静脉推注、静脉滴注、非静脉给药。三种计算方法完全不同,如果选错了则计算结果就没法用了。

(三)数据浏览问题

软件的数据输出,主要有两种方式:打印、屏幕浏览。如果选择打印,则会Device time out,因为没有打印机!现在已经找不到支持DOS系统的打印机了,更何况这个DOS环境还是模拟的。如果出现错误,则软件会自动退出(类似于图1),需要重新输入3p97.exe进入,并从头操作。

屏幕浏览,需要输入报告起始、终止序号。计算后,具体有多少个报告,我根本不知道,浏览时我输入的起始报告是1,终止报告是9。这9个报告中,一共是三组数学模型,分别是一室、二室、三室模型。权重系数分别是1、1/C、1/C/C,第三个也可以写成1/(C*C)。这时就要根据里面的各种值来选择最佳房室模型。

(四)数据保存问题

在进行关键操作后,数据会被软件自动保存到该软件所在的根目录,名字是drug名。如果输入的drug名小于8个字母,则文件名是drug名;如果输入的drug名大于8个字母,则文件名是drug名的前8个字母。进行不同操作后,保存的文件有多个后缀,但是文件名都是一样的。后面进行一些操作需要输入文件名时,则必须准确输入,千万不能输入后缀,也不能输入错误,否则软件会自动退出(类似于图1),需要重新进入。

这几个文件可以复制到其他电脑上该软件的文件夹下面。软件可以识别。但是必须放在软件所在文件夹的根目录下。如果更改文件名,这几个文件也必须同名,且只能使用英文字母和英文标点符号。

以上是截止2018年3月28日遇到的问题。针对软件分析的技术性问题,我也不懂,正在和委托人一起研究。

22 条回复

不开门 2018年3月28日 回复

林老师也开始写技术博文啦

林海草原 2018年3月29日 回复

吐槽文,哈哈

姜辰 2018年3月28日 回复

林老师的主力电脑用的居然是linux?这真的很厉害!

林海草原 2018年3月29日 回复

不厉害啊,linux可以日常使用,部分专业软件在linux下运行更好,比如SPSS。linux可以满足我几乎所有的需求了,除了QQ。

wys 2018年3月29日 回复

一谈到DOS,真不懂了。不过,软驱还是用过的,上大学那会儿;那会还用winme,win95、98。

林海草原 2018年3月29日 回复

DOS我也不懂,我现在多少会一点linux命令,但是DOS命令和linux的不一样,linux继承的unix用法,比unix出现的晚的DOS就是故意和unix不一样的。win95和98在我的虚拟机里面有,我也偶尔打开看看,哈哈

陈仓颉 2018年3月29日 回复

林老师突然写技术博客,画风突变

林海草原 2018年3月29日 回复

哈哈,这是吐槽文。既然现在相关软件这么发达,为何揪住3p97不放。我承认1997年的时候搞科研的决心很大,否则不会生产出3p97,然而以后就放弃了,国外的发展起来了,为何不用国外的软件呢?

陈大猫 2018年3月30日 回复

不明觉厉。Linux界面看起来还挺清爽。作为非技术人士,我觉得还是Win系统比较合适折腾。

林海草原 2018年3月30日 回复

Linux不是只针对技术人士。我是外行,我就是看中Linux不卡、没有垃圾软件、没有捆绑广告那些,才选择用Linux。Linux下的命令我只会用十条左右,实际上完全不用命令就能操作。

春熙路 2018年4月12日 回复

老兄你好,春熙路网址www.465400.net更改为www.ittan.cn,麻烦有时间修改一下友链,谢谢了

林海草原 2018年4月15日 回复

已修改。

菜鸟博客 2018年4月13日 回复

看到这么老的界面,好怀念啊,想当年在DOS做汇编……

林海草原 2018年4月15日 回复

哈哈,高手。

Junewah Wu 2018年4月23日 回复

很喜欢楼主生活记事类博客,我的也是,申请和博主交换友链,我已经添加了哈
https://hellohome.cn/links

林海草原 2018年4月25日 回复

谢谢,欢迎常来!我也添加了你的链接。

绅士福利 2018年4月27日 回复

不是很懂这个哈!

林海草原 2018年5月1日 回复

我也不是很懂。

小彦 2018年5月28日 回复

天哪,谁还用这么老的程序……现在互联网下不到替代程序么……

林海草原 2018年6月4日 回复

国外开发的有替代程序,但是:他们把下载链接托管在下载站了,而且那个下载站被X了,我这边没法翻出去,所以无法下载到国外的替代程序。境内的替代程序就是DAS,每个模块7800元,网上没有任何可下载的链接。后来找到某个大学副教授,求她帮忙分析好了数据。

AAron 2019年6月13日 回复

请问国外的替代软件叫什么呢

林海草原 2019年6月14日 回复

DAS。

发表回复