具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
如图1展示的是一条有效的扩增曲线示意图,横坐标代表PCR扩增实验的反应循环数,纵坐标代表每个反应循环数下的荧光强度(也就是荧光值),完整准确的PCR扩增曲线包括基线期、指数期和平台期。
基线期代表PCR扩增实验刚开始的几个反应循环,通常在这段时期内由于待测样本内的目标靶基因含量较少,对应的报告基团较少,检测报告基团荧光值的检测器通常较难检测到荧光值,因此近乎为一条直线;随着扩增实验的进行,扩增产物量逐渐增多,到达临界点后检测器开始可以检测到荧光值,在随后的检测中,检测到荧光值以指数形式变化,因此反映出扩增产物以指数形式增加,此阶段即为指数期;随着扩增实验的继续进行,扩增实验所需要的原料被消耗殆尽,此时扩增产物增长缓慢,直至不再增长,此阶段即为平台期。
无效扩增曲线的类型多种多样,而有效扩增曲线的类型固定,因此只要判断出待分析的扩增曲线是否满足一定条件,即可得出该扩增曲线是否为有效扩增曲线,而上述所说的一定条件是本申请人在不断实验、数据运算、实验验证后所归纳、证实出的,并非是本领域内所公知的条件,通过上述条件可以快速、准确对扩增曲线进行有效性的判断,对无效扩增曲线进行排除,因此本申请提出一种PCR扩增曲线有效扩增判定方法。
图2为本发明实施例中PCR扩增曲线有效扩增判定方法的流程图,包括:
步骤201,获取PCR扩增实验结束后的数据包,所述数据包包括多组数组,数组为一一对应的循环数和荧光值;
步骤202,在数组的组数大于第一阈值时,对多组数组进行描点拟合,拟合为待分析扩增曲线;
步骤203,根据待分析扩增曲线的拟合情况,判断待分析扩增曲线的有效性,获得第一判断结果;
步骤204,若第一判断结果为有效扩增曲线,根据数据包中的荧光值,确定背景值;
步骤205,根据数据包中的荧光值和背景值,判断待分析扩增曲线的有效性,获得第二判断结果。
本发明实施例中,进行了PCR扩增曲线的多轮有效判定,包括根据扩增曲线的数据包的数组的组数、扩增曲线的拟合情况、数据包中的荧光值来多轮次的有效判定,这样判定结果非常准确。下面对每个步骤进行详细介绍。
在步骤201中,获取PCR扩增实验结束后的数据包,数据包包括多组数组,数组为一一对应的循环数和荧光值;
其中,数组数与PCR扩增实验的反应循环数对应。
在步骤202中,在数组的组数大于第一阈值时,对多组数组进行描点拟合,拟合为待分析扩增曲线;
其中,第一阈值可以是5(或者6、7、8、9、10),可根据具体情况而定,具体的第一阈值可以是任意一个小于PCR扩增实验循环数的正整数(例如,PCR扩增实验循环数为40,则第一阈值可以是小于40的任意一个正整数),若数组的组数不大于第一阈值,则数据包对应的扩增曲线为无效扩增曲线;
之所以进行数组的组数的判断是因为在PCR扩增实验进行中,有可能出现仪器故障致使扩增实验中断,通过该判断可以直接排除掉仪器故障引发的无效扩增曲线情况。
在步骤203中,根据待分析扩增曲线的拟合情况,判断待分析扩增曲线的有效性,获得第一判断结果;
参见图3,根据待分析扩增曲线的拟合情况,判断待分析扩增曲线的有效性,获得第一判断结果,包括:
步骤301,计算待分析扩增曲线的线性拟合度;
步骤302,计算待分析扩增曲线上的拟合荧光值与多组数组中的真实荧光值的均方根误差;
步骤303,若线性拟合度大于拟合度阈值(例如0.95)且均方根误差小于均方根误差阈值(例如0.05),确定第一判断结果为无效扩增曲线,否则确定第一判断结果为有效扩增曲线。
在步骤204中,若第一判断结果为有效扩增曲线,根据数据包中的荧光值,确定背景值;
参见图4,根据数据包中的荧光值,确定背景值,包括:
步骤401,对数据包中的前预设数量的数组(例如前三组数组)中循环数对应的荧光值求取均值;
步骤402,确定所述均值为背景值。
在步骤205中,根据数据包中的荧光值和背景值,判断待分析扩增曲线的有效性,获得第二判断结果;
参见图5,根据数据包中的荧光值和背景值,判断待分析扩增曲线的有效性,获得第二判断结果,包括:
步骤501,在背景值大于等于背景阈值(例如10000)时,根据数据包中的荧光值,判断待分析扩增曲线的有效性,获得第二判断结果;
步骤502,在背景值小于背景阈值时,对数据包进行扩展处理,获得处理数据包,将处理数据包作为数据包,判断待分析扩增曲线的有效性,获得第二判断结果。
参见图6,在背景值大于等于背景阈值时,根据数据包中的荧光值,判断待分析扩增曲线的有效性,获得第二判断结果,包括:
步骤601,对数据包中的所有荧光值进行分类,得到基线期数据包,例如可根据聚类算法进行分类,基线期数据包对应扩增曲线的基线期;
步骤602,根据基线期数据包,确定增量值;
参见图7,根据基线期数据包,确定增量值,包括:
步骤701,确定基线期数据包中的最大循环数为循环拐点;
步骤702,对数据包中,循环拐点对应的循环数后紧邻的连续多个循环数对应的荧光值依次做相邻差值计算,得到多个差值结果,记为增量值。
步骤603,在增量值大于增量阈值时,根据数据包中的最大荧光值,判断待分析扩增曲线的有效性,获得第三判断结果;
参见图8,在增量值大于增量阈值时,根据数据包中的最大荧光值,判断待分析扩增曲线的有效性,获得第三判断结果,包括:
步骤801,筛选数据包中的最大荧光值记做荧光最值,计算基线期数据包的荧光值均值,记作基线荧光均值;
步骤802,判断荧光最值减去基线荧光均值的差值是否大于预设差值(例如150);若否,确定第三判断结果为无效扩增曲线;若是,确定第三判断结果为有效扩增曲线。
步骤604,若第三判断结果为有效扩增曲线,根据数据包中的荧光值的标准差,判断待分析扩增曲线的有效性,获得第四判断结果;
参见图9,根据数据包中的荧光值的标准差,判断待分析扩增曲线的有效性,获得第四判断结果,包括:
步骤901,计算数据包中的荧光值的标准差,记作荧光标准差;
步骤902,判断荧光标准差是否大于第二荧光标准差(例如45);若否,确定第四判断结果为无效扩增曲线;若是,确定第四判断结果为有效扩增曲线。
步骤605,若第四判断结果为有效扩增曲线,对数据包中的所有荧光值进行分类,得到指数期数据包;例如,可采用聚类算法进行分类;
步骤606,根据指数期数据包中的荧光值,判断待分析扩增曲线的有效性,获得第二判断结果。
参见图10,根据指数期数据包中的荧光值,判断待分析扩增曲线的有效性,获得第二判断结果,包括:
步骤1001,对数据包中的所有荧光值进行分类,得到指数期数据包;
步骤1002,对指数期数据包相邻循环数所对应的荧光值拟合的线求导,得到指数期斜率包;
步骤1003,筛选出指数期斜率包中的最大值,记作指数期斜率最值;
步骤1004,计算指数期斜率最值与基线期荧光标准差的商值;
步骤1005,判断该商值是否大于商阈值(例如1.1);若是,确定第二判断结果为有效扩增曲线;若否,确定第二判断结果为无效扩增曲线。
在一实施例中,(步骤502)在背景值小于背景阈值时,对数据包进行扩展处理,获得处理数据,包括:
对数据包中所有的荧光值乘以预设倍数(例如1.2~1.5),得到扩展数据包;
筛选出扩展数据包中荧光值大于荧光阈值(例如5000)的荧光值;
将所述荧光值均减去第一背景值,获得处理数据包,其中第一背景值为预设比例(例如60%)与背景值的乘积。
在一实施例中,采用如下公式计算增量阈值:
增量阈值=基线期数据包中的中位循环数对应的荧光值+基线期数据包中的荧光值标准差×预设倍数。
例如,预设倍数为3。
下面给出一个具体的实施例,来说明本发明实施例提出的方法的具体应用。
S1:获取PCR扩增实验结束后的数据包,数据包包括40个数组,分别为{(C1,Rn1)、(C2,Rn2)、(C3,Rn3)、(C4,Rn4)、……、(C40,Rn40)},其中C1~C40代表循环数,Rn1~Rn40代表对应循环数下的荧光值,省略号部分代表数据包的40个数组中第5个至第39个数组,(应注意的是,下文中出现的其他省略号可依此例类推出所省略的内容,后文不再赘述)首先判断数组的组数是否大于5(或者6、7、8、9、10),若是则执行步骤S2,否则输出该扩增曲线为无效扩增曲线;
之所以进行该判断是因为在PCR扩增实验进行中,有可能出现仪器故障致使扩增实验中断,通过该判断可以直接排除掉仪器故障引发的无效扩增曲线情况;
S2:对40个数组进行描点拟合,拟合为待分析扩增曲线,计算待分析扩增曲线的线性拟合度(r2),当r2>0.95时意味着待分析扩增曲线更趋近于一条直线,而非标准扩增曲线的“S”型。线性拟合度(r2)为回归直线对观测值的拟合程度,r2最大值为1,r2的值越接近1,说明回归直线对观测值的拟合程度越好,反之,r2的值越小,说明回归直线对观测值的拟合程度越差;
计算待分析扩增曲线上的拟合荧光值与数组中的真实荧光值的均方根误差;均方根误差是预测值与真实值偏差的平方与观测次数n比值的平方根,公式为,di为一组预测值与真实值的偏差。具体的Rn1~Rn40为数组中的真实荧光值,Rn1'~Rn40'为根据拟合的待分析扩增曲线所计算出的循环数对应的预测荧光值(也就是拟合荧光值),di=(Rn1-Rn1'),……,(Rn40-Rn40'),
均方根误差如下:
当r2>0.95,且Re<0.05时,则证明根据数据包的40个数组拟合出的待分析扩增曲线为一条直线,而非“S”型曲线;
当r2>0.95,且Re<0.05时,则输出该扩增曲线为无效扩增曲线,否则执行步骤S3;
S3:求取Rn1、Rn2、Rn3的均值记作背景值;
S4:判断背景值是否小于10000,
若是,则对Rn1~Rn40均乘以1.2~1.5,得到扩展数据包{(C1,Rn1*)、(C2,Rn2*)、(C3,Rn3*)、(C4,Rn4*)、……、(C40,Rn40*)};
之所以进行该步骤是因为在有些情况下,扩增曲线虽然是有效扩增曲线,但是因为待测样本中目标靶基因的初始含量过少,导致荧光值普遍过低,即被判定为无效扩增曲线,因此需先对该类扩增曲线进行等比放大再进行判断,避免错判;
若不是,则对数据包执行步骤S6;
S5:筛选出扩展数据包中荧光值大于5000的荧光值,对该类荧光值均减去60%背景值,将处理后的扩展数据包记作处理数据包{(C1,Rn1*)、(C2,Rn2*)、(C3,Rn3*)、(C4,Rn4*')、……、(C40,Rn40*')},做此步骤处理是为了防止步骤S4中对待扩增曲线的放大倍数过大;
S6:对处理数据包{(C1,Rn1*)、(C2,Rn2*)、(C3,Rn3*)、(C4,Rn4*')、……、(C40,Rn40*')}中的所有荧光值根据聚类算法分类,得到基线期数据包,例如(Rn1*,Rn2*,Rn3*,Rn4*',Rn5*',Rn6*'),基线期数据包中的最大循环数C6记作循环拐点;
或者对数据包{(C1,Rn1)、(C2,Rn2)、(C3,Rn3)、(C4,Rn4)、……、(C40,Rn40)}中的所有荧光值根据聚类算法分类,得到基线期数据包,例如(Rn1,Rn2,Rn3,Rn4,Rn5,Rn6),基线期数据包中的最大循环数C6记作循环拐点;
S7:对基线期数据包(Rn1*,Rn2*,Rn3*,Rn4*',Rn5*',Rn6*')中,循环拐点C6对应的循环数C6后紧邻的连续多个循环数C7~C10对应的荧光值Rn7*'~Rn10*'依次做相邻差值计算(Rn8*'-Rn7*'、Rn9*'-Rn8*'、Rn10*'-Rn9*')得到多个差值结果,记为增量值L1、L2、L3;
S8:判断增量值L1、L2、L3是否均大于增量阈值L,
增量阈值L的计算方式为:基线期数据包(Rn1*,Rn2*,Rn3*,Rn4*',Rn5*',Rn6*')中的中位循环数对应的荧光值加上基线期数据包中的荧光值标准差(记为基线期荧光标准差A1)的3倍{L=(Rn3*+Rn4*')/2+3A1},若是则执行步骤S9,否则输出该扩增曲线为无效扩增曲线;
S9:筛选出步骤S5中处理数据包{(C1,Rn1*)、(C2,Rn2*)、(C3,Rn3*)、(C4,Rn4*')、……、(C40,Rn40*')}中的最大荧光值记做荧光最值Z(也就是Rn40*'),计算步骤S6中的基线期数据包(Rn1*,Rn2*,Rn3*,Rn4*',Rn5*',Rn6*')的荧光值均值B,记作基线荧光均值B;
判断Z-B>150?,若是则执行步骤S10,否则输出该扩增曲线为无效扩增曲线;
S10:计算步骤S5中处理数据包{(C1,Rn1*)、(C2,Rn2*)、(C3,Rn3*)、(C4,Rn4*')、……、(C40,Rn40*')}中的荧光值的标准差,记作荧光标准差A2,
判断荧光标准差A2>45?,若是则执行步骤S11,否则输出该扩增曲线为无效扩增曲线;
S11:对步骤S5中处理数据包{(C1,Rn1*)、(C2,Rn2*)、(C3,Rn3*)、(C4,Rn4*')、……、(C40,Rn40*')}中的所有荧光值根据聚类算法分类,得到指数期数据包(Rn7*',Rn8*',Rn9*',Rn10*',Rn11*',……,Rn25*'),对指数期数据包相邻循环数所对应的荧光值拟合的线求导,得到指数期斜率包,例如(Rn7*'与Rn8*'所得线的斜率,Rn8*'与Rn9*'所得线的斜率,……,Rn24*'与Rn25*'所得线的斜率),筛选出指数期斜率包中的最大值,记作指数期斜率最值K;
S12:计算步骤S11中的指数期斜率最值K与基线期荧光标准差A1的商值S,S=K/A1,判断S>1.1?,若是,则输出该扩增曲线为有效扩增曲线,否则输出该扩增曲线为无效扩增曲线。
综上可见,在满足如下条件时,则判定待分析扩增曲线为有效扩增曲线。
1)L1、L2、L3均大于增量阈值L;
2)Z-B>150;
3)A2>45;
4)S>1.1
综上所述,在本发明实施例提出的方法中,获取PCR扩增实验结束后的数据包,所述数据包包括多组数组,数组为一一对应的循环数和荧光值;在数组的组数大于第一阈值时,对多组数组进行描点拟合,拟合为待分析扩增曲线;根据待分析扩增曲线的拟合情况,判断待分析扩增曲线的有效性,获得第一判断结果;若第一判断结果为有效扩增曲线,根据数据包中的荧光值,确定背景值;根据数据包中的荧光值和背景值,判断待分析扩增曲线的有效性,获得第二判断结果。在上述过程中,进行了PCR扩增曲线的多轮有效判定,包括根据扩增曲线的数据包的数组的组数、扩增曲线的拟合情况、数据包中的荧光值来多轮次的有效判定,这样判定结果非常准确。
其中,对数据包的数组的组数进行判断,可直接排除掉仪器故障引发的无效扩增曲线情况;对扩增曲线的拟合情况进行判断,可获得拟合非常好的扩增曲线,也就是提高有效扩增曲线的概率;通过数据包中的荧光值进行有效扩增判断时,计算扩展数据包,可避免待测样本中目标靶基因的初始含量过少,导致荧光值普遍过低,记忆被判定为无效扩增曲线;获得处理数据包,可防止对待扩增曲线的放大倍数过大;通过荧光值的多轮次的判定,可获得准确的有效扩增曲线。
本发明实施例中还提供了一种PCR扩增曲线有效扩增判定装置,如下面的实施例所述。由于该装置解决问题的原理与PCR扩增曲线有效扩增判定方法相似,因此该装置的实施可以参见PCR扩增曲线有效扩增判定方法的实施,重复之处不再赘述。
图11为本发明实施例中PCR扩增曲线有效扩增判定装置的示意图,包括:
数据包获取模块1101,用于获取PCR扩增实验结束后的数据包,所述数据包包括多组数组,数组为一一对应的循环数和荧光值;
扩增曲线拟合模块1102,用于在数组的组数大于第一阈值时,对多组数组进行描点拟合,拟合为待分析扩增曲线;
第一判定模块1103,用于根据待分析扩增曲线的拟合情况,判断待分析扩增曲线的有效性,获得第一判断结果;
背景值确定模块1104,用于若第一判断结果为有效扩增曲线,根据数据包中的荧光值,确定背景值;
第二判定模块1105,用于根据数据包中的荧光值和背景值,判断待分析扩增曲线的有效性,获得第二判断结果。
在一实施例中,第一判定模块具体用于:
计算待分析扩增曲线的线性拟合度;
计算待分析扩增曲线上的拟合荧光值与多组数组中的真实荧光值的均方根误差;
若线性拟合度大于拟合度阈值且均方根误差小于均方根误差阈值,确定第一判断结果为无效扩增曲线,否则确定第一判断结果为有效扩增曲线。
在一实施例中,背景值确定模块具体用于:
对数据包中的前预设数量的数组中循环数对应的荧光值求取均值;
确定所述均值为背景值。
在一实施例中,第二判定模块具体用于:
在背景值大于等于背景阈值时,根据数据包中的荧光值,判断待分析扩增曲线的有效性,获得第二判断结果;
在背景值小于背景阈值时,对数据包进行扩展处理,获得处理数据包,将处理数据包作为数据包,判断待分析扩增曲线的有效性,获得第二判断结果。
在一实施例中,第二判定模块具体用于:
对数据包中的所有荧光值进行分类,得到基线期数据包;
根据基线期数据包,确定增量值;
在增量值大于增量阈值时,根据数据包中的最大荧光值,判断待分析扩增曲线的有效性,获得第三判断结果;
若第三判断结果为有效扩增曲线,根据数据包中的荧光值的标准差,判断待分析扩增曲线的有效性,获得第四判断结果;
若第四判断结果为有效扩增曲线,对数据包中的所有荧光值进行分类,得到指数期数据包;
根据指数期数据包中的荧光值,判断待分析扩增曲线的有效性,获得第二判断结果。
在一实施例中,第二判定模块具体用于:
确定基线期数据包中的最大循环数为循环拐点;
对基线期数据包中,循环拐点对应的循环数后紧邻的连续多个循环数对应的荧光值依次做相邻差值计算,得到多个差值结果,记为增量值。
在一实施例中,第二判定模块具体用于:
筛选数据包中的最大荧光值记做荧光最值,计算基线期数据包的荧光值均值,记作基线荧光均值;
判断荧光最值减去基线荧光均值的差值是否大于预设差值;
若否,确定第三判断结果为无效扩增曲线;
若是,确定第三判断结果为有效扩增曲线。
在一实施例中,第二判定模块具体用于:
计算数据包中的荧光值的标准差,记作荧光标准差;
判断荧光标准差是否大于第二荧光标准差;
若否,确定第四判断结果为无效扩增曲线;
若是,确定第四判断结果为有效扩增曲线。
在一实施例中,第二判定模块具体用于:
对数据包中的所有荧光值进行分类,得到指数期数据包;
对指数期数据包相邻循环数所对应的荧光值拟合的线求导,得到指数期斜率包;
筛选出指数期斜率包中的最大值,记作指数期斜率最值;
计算指数期斜率最值与基线期荧光标准差的商值;
判断该商值是否大于商阈值;
若是,确定第二判断结果为有效扩增曲线;
若否,确定第二判断结果为无效扩增曲线。
在一实施例中,第二判定模块具体用于:
对数据包中所有的荧光值乘以预设倍数,得到扩展数据包;
筛选出扩展数据包中荧光值大于荧光阈值的荧光值;
将所述荧光值均减去第一背景值,获得处理数据包,其中第一背景值为预设比例与背景值的乘积。
在一实施例中,采用如下公式计算增量阈值:
增量阈值=基线期数据包中的中位循环数对应的荧光值+基线期数据包中的荧光值标准差×预设倍数。
综上所述,在本发明实施例提出的装置中,获取PCR扩增实验结束后的数据包,所述数据包包括多组数组,数组为一一对应的循环数和荧光值;在数组的组数大于第一阈值时,对多组数组进行描点拟合,拟合为待分析扩增曲线;根据待分析扩增曲线的拟合情况,判断待分析扩增曲线的有效性,获得第一判断结果;若第一判断结果为有效扩增曲线,根据数据包中的荧光值,确定背景值;根据数据包中的荧光值和背景值,判断待分析扩增曲线的有效性,获得第二判断结果。在上述过程中,进行了PCR扩增曲线的多轮有效判定,包括根据扩增曲线的数据包的数组的组数、扩增曲线的拟合情况、数据包中的荧光值来多轮次的有效判定,这样判定结果非常准确。
其中,对数据包的数组的组数进行判断,可直接排除掉仪器故障引发的无效扩增曲线情况;对扩增曲线的拟合情况进行判断,可获得拟合非常好的扩增曲线,也就是提高有效扩增曲线的概率;通过数据包中的荧光值进行有效扩增判断时,计算扩展数据包,可避免待测样本中目标靶基因的初始含量过少,导致荧光值普遍过低,记忆被判定为无效扩增曲线;获得处理数据包,可防止对待扩增曲线的放大倍数过大;通过荧光值的多轮次的判定,可获得准确的有效扩增曲线。
本发明实施例还提供一种计算机设备,图12为本发明实施例中计算机设备的示意图,所述计算机设备1200包括存储器1210、处理器1220及存储在存储器1210上并可在处理器1220上运行的计算机程序1230,所述处理器1220执行所述计算机程序1230时实现上述PCR扩增曲线有效扩增判定方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述PCR扩增曲线有效扩增判定方法。
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述PCR扩增曲线有效扩增判定方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。