美文网首页
高通量筛选 Z'-Factor 计算 Python脚本

高通量筛选 Z'-Factor 计算 Python脚本

作者: 火卫控 | 来源:发表于2022-09-13 10:37 被阅读0次

    高通量筛选 Z'-Factor 计算 Python脚本

    计算公式:

    Z factor = 1 - ( 3 * (σp + σn) / |(μp- μn)| )


    z-factor

    代码如下:

    #!/usr/bin/env python
    # -*- encoding: utf-8 -*-
    
    @File    :   z_factor.py
    @Time    :   2022/09/02 17:02:20
    @Author  :   aqy
    @Contact :   aqy0716@163.com
    @Department   :  GZlab
    @Desc    :   None
    
    1. 导入CSV, 首行 名称 首列为数据。生成数据集
    2. 导入统计分析包,计算平均值 和 标准差
    3. 计算Z-factor
    
    # here put the import lib
    # import csv
    
    from csv import reader
    from statistics import mean
    import numpy as np
    filename = input("请输入文件名: ")
    with open(filename,'rt',encoding='UTF-8')as raw_data:
      readers=reader(raw_data,delimiter=',')
      x=list(readers)
      data=np.array(x)
      print(data)
      print(data.shape)
    
    pos = data[1:,0]
    
    neg = data[1:,1]
    
    print(pos,neg)
    pos =[ int(x) for x in pos ]
    neg =list(map(int, neg))
    up = np.mean(pos)
    
    un = np.mean(neg)
    print(up,un)
    # python求列表均值,⽅差,标准差
    import numpy as np
    
    
    
    qp = np.std(pos)
    qn = np.std(neg)
    print(qp,qn)
    # a =[1,2,3,4,5,6]
    # #求均值
    # a_mean = np.mean(a)
    # #求⽅差
    # a_var = np.var(a)
    # #求标准差
    # a_std = np.std(a,ddof=1)
    # print("平均值为:%f"% a_mean)
    # print("⽅差为:%f"% a_var)
    # print("标准差为:%f"% a_std)
    # # 其中,可以添加参数axis 如下:
    # #参数0代表对每⼀列求值,
    # #参数1代表对每⼀⾏求值,
    # #⽆参数则求所有元素的值
    # x_mean = np.mean(x,axis =0)
    # x_var = np.var(x,axis =0)
    
    denominator = abs(up-un)
    numerator = 3 * (qp+qn)
    z = 1-(numerator/denominator)
    
    
    print("z-factor is : ", z)
    

    s示例数据如下:

    positive,negtive
    2000,50
    2001,59
    1985,23
    1869,95
    1794,64
    2103,75
    

    结果如下:

    Microsoft Windows [版本 10.0.22000.856]
    (c) Microsoft Corporation。保留所有权利。
    
    D:\Coding\python_gzlab_docu>D:/ruanjian/anaconda3/Scripts/activate.bat
    
    (base) D:\Coding\python_gzlab_docu>D:/ruanjian/anaconda3/python.exe "d:/Coding/python_gzlab_docu/gzlab_python_do/Statistical Analysis/z_factor/z_factor.py"
    请输入文件名: D:\Coding\python_gzlab_docu\gzlab_python_do\Statistical Analysis\z_factor\drug.csv
    [['positive' 'negtive']
     ['2000' '50']
     ['2001' '59']
     ['1985' '23']
     ['1869' '95']
     ['1794' '64']
     ['2103' '75']]
    (7, 2)
    ['2000' '2001' '1985' '1869' '1794' '2103'] ['50' '59' '23' '95' '64' '75']
    1958.6666666666667 61.0
    100.15099711047425 22.098265391956296
    z-factor is :  0.8067375087788732
    

    Z'-Factor

    z>0 系统可用

    其中:0 < z < 0.5 筛选体系可接受
    z > 0.5 筛选体系比较理想

    相关文章

      网友评论

          本文标题:高通量筛选 Z'-Factor 计算 Python脚本

          本文链接:https://www.haomeiwen.com/subject/joianrtx.html