skbio.alignment.TabularMSA.conservation

TabularMSA.conservation(metric='inverse_shannon_uncertainty', degenerate_mode='error', gap_mode='nan')[源代码]

应用度量计算所有路线位置的守恒

状态:从0.4.1开始试验。

参数:
  • metric ({'inverse_shannon_uncertainty'}, optional) -- 应用于计算守恒的度量。当位置更保守时,结果值应该更大。

  • degenerate_mode ({'nan', 'error'}, optional) -- 处理带有退化字符的位置的模式。如果 "nan" ,具有退化字符的位置将被分配一个守恒分数 np.nan .如果 "error" ,如果存在一个或多个退化字符,则将引发错误。

  • gap_mode ({'nan', 'ignore', 'error', 'include'}, optional) -- 处理带有间隙字符的位置的模式。如果 "nan" ,有差距的职位将被分配保护分数 np.nan .如果 "ignore" ,有间隙的位置将被过滤以删除之前的间隙 metric 已应用。如果 "error" ,如果存在一个或多个间隙字符,将引发错误。如果 "include" ,将在包括间隙的定线位置计算守恒。在这种情况下,这取决于度量来确保按应有的方式处理间隙,或者在该度量不支持间隙时引发错误。

返回:

应用 metric 对中的每个位置。

返回类型:

np.array of floats

抛出:
  • ValueError -- 如果一个未知的 metricdegenerate_modegap_mode 提供。

  • ValueError -- 如果对齐中存在任何退化字符,则 degenerate_mode"error" .

  • ValueError -- 如果路线中存在任何间隙 gap_mode"error" .

备注

gap_mode = "include" 因为结果可能有误导性。例如,如 [1], 一个由90%的间隙和10%的色氨酸组成的蛋白质排列位置比由丙氨酸和甘氨酸组成的位置具有相同的保守性 "inverse_shannon_uncertainty" 公制。

gap_mode = "include" 将导致所有空白字符被重新编码到 TabularMSA.dtype.default_gap_char . 因为我们所知的任何守恒度量都没有以不同的方式考虑不同的间隙特征(例如 [1]) ,它们在这个方法中都是一样的。

这个 inverse_shannon_uncertainty 度量就是一减去香农的不确定度。这种方法使用香农不确定性的逆,因此较大的值意味着更高的守恒。香农的不确定性也被称为香农熵,但当从符号进行计算时,正如这里所做的,“不确定性”是首选术语 ([2]) .

引用