8  稀释回收与HOOK

本文演示如何使用 ivdtools 包分析稀释回收、加标回收和高剂量钩状效应。稀释回收用于评价稀释后结果能否按稀释倍数还原,加标回收用于评价加入分析物后的实测增量,高剂量钩状效应用于识别高浓度样本信号下降并重新进入测量区间的风险。

三个分析路径都涉及浓度或响应的变化,但输入数据、分母和结论不同:

分析路径 主要输入 主要返回结果
稀释回收 原样编号、测量结果、稀释倍数及可选赋值 靶值、稀释校正浓度、单样本回收率及跨样本区间
加标回收 分析物加标与等体积溶剂对照结果、理论加入浓度 观测增量、单样本及跨样本回收率
高剂量钩状效应 已知浓度、原始响应、ULoQ 及可选试验序列 浓度水平汇总、钩状效应界限和未观察到钩状效应时的下限
重要使用边界

本章函数只进行数据汇总、回收率计算、区间估计和钩状效应界限识别,不内置接受标准,也不自动建立或验证扩展测量区间(EMI)。稀释液、稀释倍数、加标材料、样本类型、ULoQ、最高试验浓度和允许回收范围必须在查看结果前确定。

代码
library(ivdtools)
library(readr)

8.1 主要函数

函数 用途 返回值
dilution_recovery() 计算稀释靶值、校正浓度和回收率 dilution_recovery 对象
spike_concentration() 按质量平衡计算加标后的理论浓度 spike_concentration 数据框
spike_recovery() 计算分析物加标相对溶剂对照的回收率 spike_recovery 对象
hook_effect() 汇总高浓度响应并识别钩状效应界限 hook_effect 对象

8.1.1 稀释回收 dilution_recovery()

调用形式

代码
dilution_recovery(
  data,
  sample,
  result,
  dilution_factor,
  assigned = NULL,
  diluent_value = 0,
  conf.level = 0.95
)

plot(x, type = c("recovery", "summary", "observed"))

参数

参数 说明
data 长格式数据框,每行是一项测量结果。
sample 原样编号列的列名。
result 数值型测量结果列的列名。
dilution_factor 数值型稀释倍数列的列名;未稀释为 1,1/2 稀释为 2。
assigned 可选的原样赋值列;省略时以每份样本未稀释结果的均值作为原样浓度。
diluent_value 稀释液中的分析物浓度,默认为 0。
conf.level 同一稀释倍数跨样本平均回收率的置信水平。

返回值

返回 dilution_recovery 类对象。results 保存各“样本 × 稀释倍数”的重复数、均值、SD、CV、原样赋值、靶值、稀释校正浓度和回收率;summary 保存各稀释倍数的样本数、平均回收率、SD、SE、自由度和置信区间;data 与 excluded 分别保存进入分析的数据和被排除的原始行号。plot() 的 type 可选择单样本回收率、跨样本汇总或实测结果图。

8.1.2 加标浓度 spike_concentration()

调用形式

代码
spike_concentration(
  sample_concentration,
  sample_volume,
  stock_concentration,
  spike_volume
)

参数

参数 说明
sample_concentration 加标前样本浓度。
sample_volume 参加混合的样本体积。
stock_concentration 加标材料浓度。
spike_volume 加入的加标材料体积。

四个参数均接受有限数值向量,并按 R 的普通向量循环规则配对;浓度单位和体积单位必须分别保持一致。

返回值

返回 spike_concentration 类数据框,包含输入浓度和体积、total_volume、spike_fraction、 added_concentration 以及混合后的 final_concentration。

8.1.3 加标回收 spike_recovery()

调用形式

代码
spike_recovery(
  data,
  sample,
  result,
  condition,
  analyte_level,
  solvent_level,
  added_concentration = NULL,
  sample_volume = NULL,
  stock_concentration = NULL,
  spike_volume = NULL,
  conf.level = 0.95
)

plot(x)

参数

参数 说明
data 长格式加标试验数据框。
sample 样本编号列的列名。
result 数值型测量结果列的列名。
condition 区分分析物加标与溶剂对照的条件列。
analyte_level、solvent_level 分别标识分析物加标和溶剂对照条件的取值。
added_concentration 最终混合液中的理论加入浓度,可为单个数值或数据列;提供后不再由体积计算。
sample_volume、 stock_concentration、 spike_volume 未提供 added_concentration 时用于计算理论加入浓度,可为单个数值或数据列。
conf.level 跨样本平均回收率的置信水平。

返回值

返回 spike_recovery 类对象。results 保存每份样本两个条件的重复数、均值和 SD,以及观测增量、理论加入浓度和回收率;summary 保存跨样本平均回收率、SD、SE、自由度和置信区间;data 与 excluded 保存分析数据和被排除行号;plot() 返回各样本回收率图。

8.1.4 高剂量钩状效应 hook_effect()

调用形式

代码
hook_effect(
  data,
  concentration,
  response,
  series = NULL,
  uloq,
  uloq_response = NULL,
  conf.level = 0.95
)

plot(x)

参数

参数 说明
data 含已知浓度和原始响应的数据框。
concentration 数值型已知浓度列的列名。
response 数值型原始响应列的列名,不能使用仪器截断后的报告浓度替代。
series 可选的独立钩状效应试验序列列。
uloq 分析测量区间上限浓度。
uloq_response 可选的 ULoQ 原始响应;省略时每个序列必须包含 concentration == uloq 的记录。
conf.level 各浓度平均原始响应的置信水平。

返回值

返回 hook_effect 类对象。level_summary 保存各“序列 × 浓度”的重复数、均值、SD、CV、SE 和置信区间;results 保存 ULoQ 响应、钩状效应界限、首次回落至 ULoQ 响应范围内的浓度以及最高试验浓度;minimum_hook_concentration 为所有序列中最保守的界限;data 与 excluded 保存分析数据和被排除行号。函数不在相邻浓度之间插值。

8.2 分析案例

8.2.1 CLSI EP34 表 1:单样本稀释液适用性

EP34 表 1 对同一份原样和 1/2、1/4、1/10、1/20 四级稀释样本各测量 3 次。未提供独立赋值,因此 dilution_recovery() 以未稀释结果的均值作为原样浓度。

代码
ep34_table1 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-table1-single-sample.csv",
  show_col_types = FALSE
)

head(ep34_table1, 6)
# A tibble: 6 × 6
  sample      dilution fraction replicate observed dilution_factor
  <chr>       <chr>       <dbl>     <dbl>    <dbl>           <dbl>
1 EP34-Table1 neat         1            1    624.                1
2 EP34-Table1 1/2          0.5          1    293.                2
3 EP34-Table1 1/4          0.25         1    156.                4
4 EP34-Table1 1/10         0.1          1     63.1              10
5 EP34-Table1 1/20         0.05         1     34.1              20
6 EP34-Table1 neat         1            2    629.                1
代码
ep34_table1_result <- dilution_recovery(
  ep34_table1,
  sample = "sample",
  result = "observed",
  dilution_factor = "dilution_factor",
  conf.level = 0.95
)
ep34_table1_result

Dilution recovery
  Samples: 1
  Dilution factors:  1,  2,  4, 10, 20
  Confidence level: 95.0%

  Dilution factor: 1
    Specimen content   : 100
    Samples            : 1
    Mean recovery      : 100
    SD recovery        : NA
    SE recovery        : NA
    Degrees of freedom : NA
    CI lower           : NA
    CI upper           : NA

  Dilution factor: 2
    Specimen content   : 50
    Samples            : 1
    Mean recovery      : 95.583142
    SD recovery        : NA
    SE recovery        : NA
    Degrees of freedom : NA
    CI lower           : NA
    CI upper           : NA

  Dilution factor: 4
    Specimen content   : 25
    Samples            : 1
    Mean recovery      : 101.46518
    SD recovery        : NA
    SE recovery        : NA
    Degrees of freedom : NA
    CI lower           : NA
    CI upper           : NA

  Dilution factor: 10
    Specimen content   : 10
    Samples            : 1
    Mean recovery      : 105.81278
    SD recovery        : NA
    SE recovery        : NA
    Degrees of freedom : NA
    CI lower           : NA
    CI upper           : NA

  Dilution factor: 20
    Specimen content   : 5
    Samples            : 1
    Mean recovery      : 99.312696
    SD recovery        : NA
    SE recovery        : NA
    Degrees of freedom : NA
    CI lower           : NA
    CI upper           : NA

  Sample results

  Sample: EP34-Table1 | Dilution factor: 1
    Replicates              : 3
    Mean result             : 625.63333
    SD result               : 3.1214313
    CV result               : 0.49892343
    Specimen content        : 100
    Assigned value          : 625.63333
    Target concentration    : 625.63333
    Corrected concentration : 625.63333
    Recovery                : 100

  Sample: EP34-Table1 | Dilution factor: 2
    Replicates              : 3
    Mean result             : 299
    SD result               : 6.2793312
    CV result               : 2.1001108
    Specimen content        : 50
    Assigned value          : 625.63333
    Target concentration    : 312.81667
    Corrected concentration : 598
    Recovery                : 95.583142

  Sample: EP34-Table1 | Dilution factor: 4
    Replicates              : 3
    Mean result             : 158.7
    SD result               : 2.8213472
    CV result               : 1.7777865
    Specimen content        : 25
    Assigned value          : 625.63333
    Target concentration    : 156.40833
    Corrected concentration : 634.8
    Recovery                : 101.46518

  Sample: EP34-Table1 | Dilution factor: 10
    Replicates              : 3
    Mean result             : 66.2
    SD result               : 3.6345564
    CV result               : 5.4902664
    Specimen content        : 10
    Assigned value          : 625.63333
    Target concentration    : 62.563333
    Corrected concentration : 662
    Recovery                : 105.81278

  Sample: EP34-Table1 | Dilution factor: 20
    Replicates              : 3
    Mean result             : 31.066667
    SD result               : 2.7934447
    CV result               : 8.9917748
    Specimen content        : 5
    Assigned value          : 625.63333
    Target concentration    : 31.281667
    Corrected concentration : 621.33333
    Recovery                : 99.312696

打印汇总结果中的 SD、SE 和置信区间是根据“同一稀释倍数下不同样本的回收率”计算的,而不是根据3次重复测量计算的。所以这些值均为 NA。

代码
plot(ep34_table1_result, type = "recovery")

EP34 表 1:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
neat recovery 100.00 100.000
1/2 recovery 95.59 95.583
1/4 recovery 101.47 101.465
1/10 recovery 105.75 105.813
1/20 recovery 99.36 99.313

软件直接使用未舍入的三次均值,标准表则先把观测均值和靶值显示到一位小数后计算,因此回收率相差不超过 0.07 个百分点。按原文示例预设的 90%~110% 范围,五个稀释水平的点估计均在限内;该范围不是函数内置标准。

8.2.2 CLSI EP34 表 2:多原样本稀释

表 2 给出 5 份原样在相同五级稀释下的观测均值。原文没有公布这些均值背后的全部重复结果,因此输入数据保持汇总粒度,每个“样本 × 稀释水平”一行。

代码
ep34_table2 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-table2-multiple-samples.csv",
  show_col_types = FALSE
)

head(ep34_table2, 6)
# A tibble: 6 × 6
  sample dilution fraction observed_mean assigned dilution_factor
   <dbl> <chr>       <dbl>         <dbl>    <dbl>           <dbl>
1      1 neat         1            506        506               1
2      1 1/2          0.5          264.       506               2
3      1 1/4          0.25         120.       506               4
4      1 1/10         0.1           46        506              10
5      1 1/20         0.05          27.2      506              20
6      2 neat         1            598        598               1
代码
ep34_table2_result <- dilution_recovery(
  ep34_table2,
  sample = "sample",
  result = "observed_mean",
  dilution_factor = "dilution_factor",
  assigned = "assigned",
  conf.level = 0.95
)
ep34_table2_result

Dilution recovery
  Samples: 5
  Dilution factors:  1,  2,  4, 10, 20
  Confidence level: 95.0%

  Dilution factor: 1
    Specimen content   : 100
    Samples            : 5
    Mean recovery      : 100
    SD recovery        : 0
    SE recovery        : 0
    Degrees of freedom : 4
    CI lower           : 100
    CI upper           : 100

  Dilution factor: 2
    Specimen content   : 50
    Samples            : 5
    Mean recovery      : 100.53079
    SD recovery        : 3.5222063
    SE recovery        : 1.5751786
    Degrees of freedom : 4
    CI lower           : 96.157389
    CI upper           : 104.90418

  Dilution factor: 4
    Specimen content   : 25
    Samples            : 5
    Mean recovery      : 102.74826
    SD recovery        : 5.3015808
    SE recovery        : 2.370939
    Degrees of freedom : 4
    CI lower           : 96.165478
    CI upper           : 109.33104

  Dilution factor: 10
    Specimen content   : 10
    Samples            : 5
    Mean recovery      : 101.81449
    SD recovery        : 8.2466472
    SE recovery        : 3.6880127
    Degrees of freedom : 4
    CI lower           : 91.574928
    CI upper           : 112.05406

  Dilution factor: 20
    Specimen content   : 5
    Samples            : 5
    Mean recovery      : 99.785763
    SD recovery        : 8.8098638
    SE recovery        : 3.9398909
    Degrees of freedom : 4
    CI lower           : 88.846872
    CI upper           : 110.72465

  Sample results

  Sample: 1 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 506
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 506
    Target concentration    : 506
    Corrected concentration : 506
    Recovery                : 100

  Sample: 2 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 598
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 598
    Target concentration    : 598
    Corrected concentration : 598
    Recovery                : 100

  Sample: 3 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 570.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 570.4
    Target concentration    : 570.4
    Corrected concentration : 570.4
    Recovery                : 100

  Sample: 4 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 625.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 625.6
    Target concentration    : 625.6
    Corrected concentration : 625.6
    Recovery                : 100

  Sample: 5 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 561.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 561.2
    Target concentration    : 561.2
    Corrected concentration : 561.2
    Recovery                : 100

  Sample: 1 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 264.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 506
    Target concentration    : 253
    Corrected concentration : 529
    Recovery                : 104.54545

  Sample: 2 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 294.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 598
    Target concentration    : 299
    Corrected concentration : 588.8
    Recovery                : 98.461538

  Sample: 3 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 292.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 570.4
    Target concentration    : 285.2
    Corrected concentration : 584.2
    Recovery                : 102.41935

  Sample: 4 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 299
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 625.6
    Target concentration    : 312.8
    Corrected concentration : 598
    Recovery                : 95.588235

  Sample: 5 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 285.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 561.2
    Target concentration    : 280.6
    Corrected concentration : 570.4
    Recovery                : 101.63934

  Sample: 1 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 119.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 506
    Target concentration    : 126.5
    Corrected concentration : 478.4
    Recovery                : 94.545455

  Sample: 2 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 154.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 598
    Target concentration    : 149.5
    Corrected concentration : 616.4
    Recovery                : 103.07692

  Sample: 3 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 151.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 570.4
    Target concentration    : 142.6
    Corrected concentration : 607.2
    Recovery                : 106.45161

  Sample: 4 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 158.7
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 625.6
    Target concentration    : 156.4
    Corrected concentration : 634.8
    Recovery                : 101.47059

  Sample: 5 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 151.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 561.2
    Target concentration    : 140.3
    Corrected concentration : 607.2
    Recovery                : 108.19672

  Sample: 1 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 46
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 506
    Target concentration    : 50.6
    Corrected concentration : 460
    Recovery                : 90.909091

  Sample: 2 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 65.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 598
    Target concentration    : 59.8
    Corrected concentration : 653
    Recovery                : 109.19732

  Sample: 3 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 61.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 570.4
    Target concentration    : 57.04
    Corrected concentration : 616
    Recovery                : 107.99439

  Sample: 4 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 66.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 625.6
    Target concentration    : 62.56
    Corrected concentration : 662
    Recovery                : 105.81841

  Sample: 5 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 53.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 561.2
    Target concentration    : 56.12
    Corrected concentration : 534
    Recovery                : 95.153243

  Sample: 1 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 27.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 506
    Target concentration    : 25.3
    Corrected concentration : 544
    Recovery                : 107.50988

  Sample: 2 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 27
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 598
    Target concentration    : 29.9
    Corrected concentration : 540
    Recovery                : 90.301003

  Sample: 3 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 31.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 570.4
    Target concentration    : 28.52
    Corrected concentration : 626
    Recovery                : 109.74755

  Sample: 4 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 31.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 625.6
    Target concentration    : 31.28
    Corrected concentration : 622
    Recovery                : 99.424552

  Sample: 5 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 25.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 561.2
    Target concentration    : 28.06
    Corrected concentration : 516
    Recovery                : 91.94583
代码
plot(ep34_table2_result, type = "summary")

EP34 表 2:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
neat mean_recovery 100.00 100.000
neat lower_ci 100.00 100.000
neat upper_ci 100.00 100.000
1/2 mean_recovery 100.53 100.531
1/2 lower_ci 96.16 96.157
1/2 upper_ci 104.90 104.904
1/4 mean_recovery 102.75 102.748
1/4 lower_ci 96.17 96.165
1/4 upper_ci 109.33 109.331
1/10 mean_recovery 101.82 101.814
1/10 lower_ci 91.58 91.575
1/10 upper_ci 112.06 112.054
1/20 mean_recovery 99.76 99.786
1/20 lower_ci 88.76 88.847
1/20 upper_ci 110.77 110.725

1/2 和 1/4 稀释的 95% CI 位于示例的 90%~110% 范围内;1/10 和 1/20 稀释的区间越过该范围。直接计算与原文的细小差异来自原文对样本靶值和中间统计量的显示舍入。

8.2.3 CLSI EP34 表 3:基础加标回收

表 3 在 3 份血清样本中分别加入 0.1 mL、40 mg/dL 的钙加标液或等体积纯溶剂,每个条件测量 2 次。原文把最终混合液中的理论加入浓度显示为 3.64 mg/dL,并用该显示值计算回收率。

代码
ep34_table3_added <- spike_concentration(
  sample_concentration = 0,
  sample_volume = 1,
  stock_concentration = 40,
  spike_volume = 0.1
)
ep34_table3_added

Spike concentration
  Sample concentration: 0
    Stock concentration : 40
    Added concentration : 3.6363636
    Final concentration : 3.6363636
    Sample volume       : 1
    Spike volume        : 0.1
    Total volume        : 1.1
    Spike fraction      : 0.090909091
代码
ep34_table3 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-table3-spike-recovery.csv",
  show_col_types = FALSE
)
head(ep34_table3, 6)
# A tibble: 6 × 4
  sample condition replicate result
   <dbl> <chr>         <dbl>  <dbl>
1      1 solvent           1    9.7
2      1 solvent           2    9.9
3      1 analyte           1   12.9
4      1 analyte           2   13.3
5      2 solvent           1    9.5
6      2 solvent           2    9.5
代码
ep34_table3_result <- spike_recovery(
  ep34_table3,
  sample = "sample",
  result = "result",
  condition = "condition",
  analyte_level = "analyte",
  solvent_level = "solvent",
  added_concentration = 3.64,
  conf.level = 0.95
)
ep34_table3_result

Spike recovery
  Samples: 3
  Confidence level: 95.0%

  Samples            : 3
  Mean recovery      : 90.659341
  SD of recovery     : 2.7472527
  SE of recovery     : 1.5861271
  Degrees of freedom : 2
  CI lower           : 83.834787
  CI upper           : 97.483895

  Sample results

  Sample: 1
    Analyte replicates  : 2
    Analyte mean        : 13.1
    Analyte SD          : 0.28284271
    Solvent replicates  : 2
    Solvent mean        : 9.8
    Solvent SD          : 0.14142136
    Observed increase   : 3.3
    Added concentration : 3.64
    Recovery            : 90.659341

  Sample: 2
    Analyte replicates  : 2
    Analyte mean        : 12.7
    Analyte SD          : 0.14142136
    Solvent replicates  : 2
    Solvent mean        : 9.5
    Solvent SD          : 0
    Observed increase   : 3.2
    Added concentration : 3.64
    Recovery            : 87.912088

  Sample: 3
    Analyte replicates  : 2
    Analyte mean        : 12.3
    Analyte SD          : 0.14142136
    Solvent replicates  : 2
    Solvent mean        : 8.9
    Solvent SD          : 0.28284271
    Observed increase   : 3.4
    Added concentration : 3.64
    Recovery            : 93.406593
代码
plot(ep34_table3_result)

EP34 表 3:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
1 recovery 90.7 90.659
2 recovery 88.0 87.912
3 recovery 93.4 93.407
all mean_recovery 90.7 90.659

三份样本的回收率约为 90.7%、87.9% 和 93.4%,跨样本均值约为 90.7%。标准表只显示一位小数,且中间量的舍入并不完全一致,因此核对容差设为 0.1 个百分点;正式分析应使用未舍入的理论加入浓度和测量结果。

8.2.4 CLSI EP34 表 4:单样本多浓度加标

表 4 将 100 µL、浓度为 1 000 ng/mL 的患者样本与 900 µL 不同浓度的加标液混合。 spike_concentration() 复算质量平衡后的理论浓度;原文没有匹配的溶剂对照重复结果,因此本案例不调用 spike_recovery()。

代码
ep34_table4 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-table4-single-spike.csv",
  show_col_types = FALSE
)
ep34_table4_balance <- spike_concentration(
  sample_concentration = 1000,
  sample_volume = 0.1,
  stock_concentration = ep34_table4$spike_concentration,
  spike_volume = 0.9
)
ep34_table4$computed_ivdtools <- ep34_table4_balance$final_concentration
ep34_table4$recovery_ivdtools <-
  100 * ep34_table4$measured_concentration / ep34_table4$computed_ivdtools
ep34_table4
# A tibble: 5 × 6
  spike_concentration computed_concentration measured_concentration
                <dbl>                  <dbl>                  <dbl>
1                   0                    100                     94
2                  10                    109                     99
3                 100                    190                    181
4                1000                   1000                    917
5               10000                   9100                   9024
# ℹ 3 more variables: standard_recovery <dbl>, computed_ivdtools <dbl>,
#   recovery_ivdtools <dbl>
EP34 表 4:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
0 computed_concentration 100 100.000
0 recovery 94 94.000
10 computed_concentration 109 109.000
10 recovery 91 90.826
100 computed_concentration 190 190.000
100 recovery 95 95.263
1000 computed_concentration 1000 1000.000
1000 recovery 92 91.700
10000 computed_concentration 9100 9100.000
10000 recovery 99 99.165

10 000 ng/mL 加标液制得的样本理论浓度为 9 100 ng/mL,已超过示例 AMI,需要通过已建立的 EMI 测量。

8.2.5 CLSI EP34 表 5~6:手工稀释方案验证

该案例使用 5 份经参考测量程序赋值的患者样本。两名实验人员各独立制备两份 1/20 稀释样本,每份测量两次,因此每份原样共有 8 个稀释结果。

代码
ep34_table5 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-table5-manual-validation.csv",
  show_col_types = FALSE
)
head(ep34_table5, 6)
# A tibble: 6 × 7
  sample assigned scientist preparation replicate result dilution_factor
   <dbl>    <dbl>     <dbl>       <dbl>     <dbl>  <dbl>           <dbl>
1      1     140.         1           1         1   6.99              20
2      1     140.         1           1         2   6.51              20
3      1     140.         1           2         1   6.37              20
4      1     140.         1           2         2   6.12              20
5      1     140.         2           1         1   6.53              20
6      1     140.         2           1         2   6.74              20
代码
ep34_table5_result <- dilution_recovery(
  ep34_table5,
  sample = "sample",
  result = "result",
  dilution_factor = "dilution_factor",
  assigned = "assigned",
  conf.level = 0.95
)
ep34_table5_result

Dilution recovery
  Samples: 5
  Dilution factors: 20
  Confidence level: 95.0%

  Dilution factor: 20
    Specimen content   : 5
    Samples            : 5
    Mean recovery      : 98.761501
    SD recovery        : 4.0632964
    SE recovery        : 1.8171614
    Degrees of freedom : 4
    CI lower           : 93.716252
    CI upper           : 103.80675

  Sample results

  Sample: 1 | Dilution factor: 20
    Replicates              : 8
    Mean result             : 6.65625
    SD result               : 0.32845689
    CV result               : 4.9345636
    Specimen content        : 5
    Assigned value          : 139.68
    Target concentration    : 6.984
    Corrected concentration : 133.125
    Recovery                : 95.307131

  Sample: 2 | Dilution factor: 20
    Replicates              : 8
    Mean result             : 15.23875
    SD result               : 0.67979908
    CV result               : 4.4609898
    Specimen content        : 5
    Assigned value          : 292.04
    Target concentration    : 14.602
    Corrected concentration : 304.775
    Recovery                : 104.3607

  Sample: 3 | Dilution factor: 20
    Replicates              : 8
    Mean result             : 31.73875
    SD result               : 2.1664879
    CV result               : 6.8260025
    Specimen content        : 5
    Assigned value          : 647.32
    Target concentration    : 32.366
    Corrected concentration : 634.775
    Recovery                : 98.06201

  Sample: 4 | Dilution factor: 20
    Replicates              : 8
    Mean result             : 53.6675
    SD result               : 1.979623
    CV result               : 3.6886812
    Specimen content        : 5
    Assigned value          : 1132.45
    Target concentration    : 56.6225
    Corrected concentration : 1073.35
    Recovery                : 94.781227

  Sample: 5 | Dilution factor: 20
    Replicates              : 8
    Mean result             : 92.41375
    SD result               : 2.4947198
    CV result               : 2.6995115
    Specimen content        : 5
    Assigned value          : 1824.62
    Target concentration    : 91.231
    Corrected concentration : 1848.275
    Recovery                : 101.29643
代码
plot(ep34_table5_result, type = "observed")

EP34 表 5~6:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
1 mean 6.66 6.656
1 corrected_concentration 133.13 133.125
1 recovery 95.30 95.307
2 mean 15.24 15.239
2 corrected_concentration 304.78 304.775
2 recovery 104.40 104.361
3 mean 31.74 31.739
3 corrected_concentration 634.78 634.775
3 recovery 98.10 98.062
4 mean 53.67 53.667
4 corrected_concentration 1073.35 1073.350
4 recovery 94.80 94.781
5 mean 92.41 92.414
5 corrected_concentration 1848.28 1848.275
5 recovery 101.30 101.296

五份样本的稀释回收率为 94.8%~104.4%,均位于案例预设的 90%~110% 范围内。这里的 assigned 是参考测量程序赋值。

8.2.6 CLSI EP34 表 7~8:自动稀释方案验证

该案例的 AMI 为 5~40 pg/mL,拟建立 40~80 pg/mL 的 EMI。5 份已通过加标回收表征的样本在两台仪器上各进行 4 次 1/2 自动稀释测量。

代码
ep34_table7 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-table7-auto-validation.csv",
  show_col_types = FALSE
)
head(ep34_table7, 6)
# A tibble: 6 × 6
  sample assigned instrument replicate result dilution_factor
   <dbl>    <dbl>      <dbl>     <dbl>  <dbl>           <dbl>
1      1     44.9          1         1   20.3               2
2      1     44.9          1         2   26.0               2
3      1     44.9          1         3   24.3               2
4      1     44.9          1         4   25.0               2
5      1     44.9          2         1   22.5               2
6      1     44.9          2         2   21.3               2
代码
ep34_table7_result <- dilution_recovery(
  ep34_table7,
  sample = "sample",
  result = "result",
  dilution_factor = "dilution_factor",
  assigned = "assigned",
  conf.level = 0.95
)
ep34_table7_result

Dilution recovery
  Samples: 5
  Dilution factors: 2
  Confidence level: 95.0%

  Dilution factor: 2
    Specimen content   : 50
    Samples            : 5
    Mean recovery      : 104.55585
    SD recovery        : 6.022583
    SE recovery        : 2.693381
    Degrees of freedom : 4
    CI lower           : 97.077824
    CI upper           : 112.03387

  Sample results

  Sample: 1 | Dilution factor: 2
    Replicates              : 8
    Mean result             : 23.6775
    SD result               : 2.1002432
    CV result               : 8.8702067
    Specimen content        : 50
    Assigned value          : 44.92
    Target concentration    : 22.46
    Corrected concentration : 47.355
    Recovery                : 105.42075

  Sample: 2 | Dilution factor: 2
    Replicates              : 8
    Mean result             : 26.44
    SD result               : 1.9634299
    CV result               : 7.4259831
    Specimen content        : 50
    Assigned value          : 53.78
    Target concentration    : 26.89
    Corrected concentration : 52.88
    Recovery                : 98.326515

  Sample: 3 | Dilution factor: 2
    Replicates              : 8
    Mean result             : 35.44125
    SD result               : 1.9058139
    CV result               : 5.3773892
    Specimen content        : 50
    Assigned value          : 62.32
    Target concentration    : 31.16
    Corrected concentration : 70.8825
    Recovery                : 113.73957

  Sample: 4 | Dilution factor: 2
    Replicates              : 8
    Mean result             : 35.975
    SD result               : 1.3997653
    CV result               : 3.8909389
    Specimen content        : 50
    Assigned value          : 68.34
    Target concentration    : 34.17
    Corrected concentration : 71.95
    Recovery                : 105.28241

  Sample: 5 | Dilution factor: 2
    Replicates              : 8
    Mean result             : 37.50875
    SD result               : 1.5492066
    CV result               : 4.1302539
    Specimen content        : 50
    Assigned value          : 75.01
    Target concentration    : 37.505
    Corrected concentration : 75.0175
    Recovery                : 100.01
EP34 表 7~8:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
1 mean 23.68 23.678
1 corrected_concentration 47.36 47.355
1 recovery 105.40 105.421
2 mean 26.44 26.440
2 corrected_concentration 52.88 52.880
2 recovery 98.30 98.327
3 mean 35.44 35.441
3 corrected_concentration 70.88 70.882
3 recovery 113.70 113.740
4 mean 35.98 35.975
4 corrected_concentration 71.95 71.950
4 recovery 105.30 105.282
5 mean 37.51 37.509
5 corrected_concentration 75.02 75.018
5 recovery 100.00 100.010

五份样本的回收率为 98.3%~113.7%,均位于案例预设的 85%~115% 范围内。

8.2.7 CLSI EP34 附录 C:两组完整稀释分析

附录 C 表 C1 和 C2 只公布每份样本在各稀释水平的观测均值,没有公布均值背后的单次结果。本节按原文粒度输入,分别复算分析物 B 和分析物 C 的跨样本回收率。

表 C1:分析物 B

代码
ep34_c1 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-appendix-c1.csv",
  show_col_types = FALSE
)
head(ep34_c1, 6)
# A tibble: 6 × 5
  sample dilution dilution_factor assigned observed_mean
   <dbl> <chr>              <dbl>    <dbl>         <dbl>
1      1 neat                   1     220.         220. 
2      1 1/2                    2     220.         115. 
3      1 1/4                    4     220.          58.2
4      1 1/10                  10     220.          25.6
5      1 1/20                  20     220.          15.7
6      2 neat                   1     260.         260. 
代码
ep34_c1_result <- dilution_recovery(
  ep34_c1,
  sample = "sample",
  result = "observed_mean",
  dilution_factor = "dilution_factor",
  assigned = "assigned",
  conf.level = 0.95
)
ep34_c1_result

Dilution recovery
  Samples: 5
  Dilution factors:  1,  2,  4, 10, 20
  Confidence level: 95.0%

  Dilution factor: 1
    Specimen content   : 100
    Samples            : 5
    Mean recovery      : 100
    SD recovery        : 0
    SE recovery        : 0
    Degrees of freedom : 4
    CI lower           : 100
    CI upper           : 100

  Dilution factor: 2
    Specimen content   : 50
    Samples            : 5
    Mean recovery      : 100.49583
    SD recovery        : 3.5627839
    SE recovery        : 1.5933254
    Degrees of freedom : 4
    CI lower           : 96.072052
    CI upper           : 104.91961

  Dilution factor: 4
    Specimen content   : 25
    Samples            : 5
    Mean recovery      : 104.98711
    SD recovery        : 2.8223671
    SE recovery        : 1.2622009
    Degrees of freedom : 4
    CI lower           : 101.48268
    CI upper           : 108.49154

  Dilution factor: 10
    Specimen content   : 10
    Samples            : 5
    Mean recovery      : 115.13247
    SD recovery        : 3.1142636
    SE recovery        : 1.392741
    Degrees of freedom : 4
    CI lower           : 111.2656
    CI upper           : 118.99934

  Dilution factor: 20
    Specimen content   : 5
    Samples            : 5
    Mean recovery      : 135.48746
    SD recovery        : 8.945831
    SE recovery        : 4.0006973
    Degrees of freedom : 4
    CI lower           : 124.37974
    CI upper           : 146.59517

  Sample results

  Sample: 1 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 220.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 220.3
    Target concentration    : 220.3
    Corrected concentration : 220.3
    Recovery                : 100

  Sample: 2 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 260.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 260.1
    Target concentration    : 260.1
    Corrected concentration : 260.1
    Recovery                : 100

  Sample: 3 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 248
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 248
    Target concentration    : 248
    Corrected concentration : 248
    Recovery                : 100

  Sample: 4 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 272.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 272.2
    Target concentration    : 272.2
    Corrected concentration : 272.2
    Recovery                : 100

  Sample: 5 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 244
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 244
    Target concentration    : 244
    Corrected concentration : 244
    Recovery                : 100

  Sample: 1 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 114.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 220.3
    Target concentration    : 110.15
    Corrected concentration : 229.6
    Recovery                : 104.22152

  Sample: 2 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 128.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 260.1
    Target concentration    : 130.05
    Corrected concentration : 256.4
    Recovery                : 98.57747

  Sample: 3 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 127.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 248
    Target concentration    : 124
    Corrected concentration : 254.6
    Recovery                : 102.66129

  Sample: 4 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 129.7
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 272.2
    Target concentration    : 136.1
    Corrected concentration : 259.4
    Recovery                : 95.297575

  Sample: 5 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 124.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 244
    Target concentration    : 122
    Corrected concentration : 248.2
    Recovery                : 101.72131

  Sample: 1 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 58.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 220.3
    Target concentration    : 55.075
    Corrected concentration : 232.8
    Recovery                : 105.67408

  Sample: 2 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 67.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 260.1
    Target concentration    : 65.025
    Corrected concentration : 268.4
    Recovery                : 103.19108

  Sample: 3 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 66.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 248
    Target concentration    : 62
    Corrected concentration : 265.2
    Recovery                : 106.93548

  Sample: 4 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 68.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 272.2
    Target concentration    : 68.05
    Corrected concentration : 275.2
    Recovery                : 101.10213

  Sample: 5 | Dilution factor: 4
    Replicates              : 1
    Mean result             : 65.9
    SD result               : NA
    CV result               : NA
    Specimen content        : 25
    Assigned value          : 244
    Target concentration    : 61
    Corrected concentration : 263.6
    Recovery                : 108.03279

  Sample: 1 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 25.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 220.3
    Target concentration    : 22.03
    Corrected concentration : 256
    Recovery                : 116.20517

  Sample: 2 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 28.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 260.1
    Target concentration    : 26.01
    Corrected concentration : 288
    Recovery                : 110.72664

  Sample: 3 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 29.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 248
    Target concentration    : 24.8
    Corrected concentration : 296
    Recovery                : 119.35484

  Sample: 4 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 31.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 272.2
    Target concentration    : 27.22
    Corrected concentration : 312
    Recovery                : 114.6216

  Sample: 5 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 28
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 244
    Target concentration    : 24.4
    Corrected concentration : 280
    Recovery                : 114.7541

  Sample: 1 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 15.7
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 220.3
    Target concentration    : 11.015
    Corrected concentration : 314
    Recovery                : 142.53291

  Sample: 2 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 17.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 260.1
    Target concentration    : 13.005
    Corrected concentration : 348
    Recovery                : 133.79469

  Sample: 3 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 15.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 248
    Target concentration    : 12.4
    Corrected concentration : 312
    Recovery                : 125.80645

  Sample: 4 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 17.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 272.2
    Target concentration    : 13.61
    Corrected concentration : 350
    Recovery                : 128.58193

  Sample: 5 | Dilution factor: 20
    Replicates              : 1
    Mean result             : 17.9
    SD result               : NA
    CV result               : NA
    Specimen content        : 5
    Assigned value          : 244
    Target concentration    : 12.2
    Corrected concentration : 358
    Recovery                : 146.72131
代码
plot(ep34_c1_result, type = "summary")

表 C2:分析物 C

代码
ep34_c2 <- read_csv(
  "./data/008-稀释回收与HOOK/std-ep34-appendix-c2.csv",
  show_col_types = FALSE
)
head(ep34_c2, 6)
# A tibble: 6 × 5
  sample dilution dilution_factor assigned observed_mean
   <dbl> <chr>              <dbl>    <dbl>         <dbl>
1      1 neat                   1    1492.        1492. 
2      1 1/2                    2    1492.         751. 
3      1 1/10                  10    1492.         145. 
4      1 1/50                  50    1492.          28.7
5      1 1/200                200    1492.           7.5
6      2 neat                   1    1386.        1386. 
代码
ep34_c2_result <- dilution_recovery(
  ep34_c2,
  sample = "sample",
  result = "observed_mean",
  dilution_factor = "dilution_factor",
  assigned = "assigned",
  conf.level = 0.95
)
ep34_c2_result

Dilution recovery
  Samples: 6
  Dilution factors:   1,   2,  10,  50, 200
  Confidence level: 95.0%

  Dilution factor: 1
    Specimen content   : 100
    Samples            : 6
    Mean recovery      : 100
    SD recovery        : 0
    SE recovery        : 0
    Degrees of freedom : 5
    CI lower           : 100
    CI upper           : 100

  Dilution factor: 2
    Specimen content   : 50
    Samples            : 6
    Mean recovery      : 101.33362
    SD recovery        : 3.2217773
    SE recovery        : 1.3152851
    Degrees of freedom : 5
    CI lower           : 97.952571
    CI upper           : 104.71467

  Dilution factor: 10
    Specimen content   : 10
    Samples            : 6
    Mean recovery      : 101.55253
    SD recovery        : 5.9523994
    SE recovery        : 2.4300569
    Degrees of freedom : 5
    CI lower           : 95.305866
    CI upper           : 107.79919

  Dilution factor: 50
    Specimen content   : 2
    Samples            : 6
    Mean recovery      : 102.34874
    SD recovery        : 5.2080713
    SE recovery        : 2.1261862
    Degrees of freedom : 5
    CI lower           : 96.883208
    CI upper           : 107.81428

  Dilution factor: 200
    Specimen content   : 0.5
    Samples            : 6
    Mean recovery      : 102.55094
    SD recovery        : 5.5420679
    SE recovery        : 2.2625397
    Degrees of freedom : 5
    CI lower           : 96.734901
    CI upper           : 108.36699

  Sample results

  Sample: 1 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 1492.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 1492.1
    Target concentration    : 1492.1
    Corrected concentration : 1492.1
    Recovery                : 100

  Sample: 2 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 1386.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 1386.5
    Target concentration    : 1386.5
    Corrected concentration : 1386.5
    Recovery                : 100

  Sample: 3 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 1290.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 1290.8
    Target concentration    : 1290.8
    Corrected concentration : 1290.8
    Recovery                : 100

  Sample: 4 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 1451.6
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 1451.6
    Target concentration    : 1451.6
    Corrected concentration : 1451.6
    Recovery                : 100

  Sample: 5 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 1209.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 1209.8
    Target concentration    : 1209.8
    Corrected concentration : 1209.8
    Recovery                : 100

  Sample: 6 | Dilution factor: 1
    Replicates              : 1
    Mean result             : 1326.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 100
    Assigned value          : 1326.4
    Target concentration    : 1326.4
    Corrected concentration : 1326.4
    Recovery                : 100

  Sample: 1 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 750.9
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 1492.1
    Target concentration    : 746.05
    Corrected concentration : 1501.8
    Recovery                : 100.65009

  Sample: 2 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 680.9
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 1386.5
    Target concentration    : 693.25
    Corrected concentration : 1361.8
    Recovery                : 98.218536

  Sample: 3 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 648.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 1290.8
    Target concentration    : 645.4
    Corrected concentration : 1296.6
    Recovery                : 100.44933

  Sample: 4 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 745.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 1451.6
    Target concentration    : 725.8
    Corrected concentration : 1490.4
    Recovery                : 102.67291

  Sample: 5 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 598.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 1209.8
    Target concentration    : 604.9
    Corrected concentration : 1196.6
    Recovery                : 98.908911

  Sample: 6 | Dilution factor: 2
    Replicates              : 1
    Mean result             : 710.3
    SD result               : NA
    CV result               : NA
    Specimen content        : 50
    Assigned value          : 1326.4
    Target concentration    : 663.2
    Corrected concentration : 1420.6
    Recovery                : 107.10193

  Sample: 1 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 145.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 1492.1
    Target concentration    : 149.21
    Corrected concentration : 1454
    Recovery                : 97.446552

  Sample: 2 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 135.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 1386.5
    Target concentration    : 138.65
    Corrected concentration : 1358
    Recovery                : 97.944464

  Sample: 3 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 135.7
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 1290.8
    Target concentration    : 129.08
    Corrected concentration : 1357
    Recovery                : 105.1286

  Sample: 4 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 136.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 1451.6
    Target concentration    : 145.16
    Corrected concentration : 1365
    Recovery                : 94.034169

  Sample: 5 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 127.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 1209.8
    Target concentration    : 120.98
    Corrected concentration : 1272
    Recovery                : 105.14135

  Sample: 6 | Dilution factor: 10
    Replicates              : 1
    Mean result             : 145.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 10
    Assigned value          : 1326.4
    Target concentration    : 132.64
    Corrected concentration : 1454
    Recovery                : 109.62002

  Sample: 1 | Dilution factor: 50
    Replicates              : 1
    Mean result             : 28.7
    SD result               : NA
    CV result               : NA
    Specimen content        : 2
    Assigned value          : 1492.1
    Target concentration    : 29.842
    Corrected concentration : 1435
    Recovery                : 96.173179

  Sample: 2 | Dilution factor: 50
    Replicates              : 1
    Mean result             : 28.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 2
    Assigned value          : 1386.5
    Target concentration    : 27.73
    Corrected concentration : 1425
    Recovery                : 102.77678

  Sample: 3 | Dilution factor: 50
    Replicates              : 1
    Mean result             : 26.8
    SD result               : NA
    CV result               : NA
    Specimen content        : 2
    Assigned value          : 1290.8
    Target concentration    : 25.816
    Corrected concentration : 1340
    Recovery                : 103.81159

  Sample: 4 | Dilution factor: 50
    Replicates              : 1
    Mean result             : 27.9
    SD result               : NA
    CV result               : NA
    Specimen content        : 2
    Assigned value          : 1451.6
    Target concentration    : 29.032
    Corrected concentration : 1395
    Recovery                : 96.100854

  Sample: 5 | Dilution factor: 50
    Replicates              : 1
    Mean result             : 25.9
    SD result               : NA
    CV result               : NA
    Specimen content        : 2
    Assigned value          : 1209.8
    Target concentration    : 24.196
    Corrected concentration : 1295
    Recovery                : 107.04249

  Sample: 6 | Dilution factor: 50
    Replicates              : 1
    Mean result             : 28.7
    SD result               : NA
    CV result               : NA
    Specimen content        : 2
    Assigned value          : 1326.4
    Target concentration    : 26.528
    Corrected concentration : 1435
    Recovery                : 108.18758

  Sample: 1 | Dilution factor: 200
    Replicates              : 1
    Mean result             : 7.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 0.5
    Assigned value          : 1492.1
    Target concentration    : 7.4605
    Corrected concentration : 1500
    Recovery                : 100.52946

  Sample: 2 | Dilution factor: 200
    Replicates              : 1
    Mean result             : 7.2
    SD result               : NA
    CV result               : NA
    Specimen content        : 0.5
    Assigned value          : 1386.5
    Target concentration    : 6.9325
    Corrected concentration : 1440
    Recovery                : 103.85864

  Sample: 3 | Dilution factor: 200
    Replicates              : 1
    Mean result             : 6.4
    SD result               : NA
    CV result               : NA
    Specimen content        : 0.5
    Assigned value          : 1290.8
    Target concentration    : 6.454
    Corrected concentration : 1280
    Recovery                : 99.16331

  Sample: 4 | Dilution factor: 200
    Replicates              : 1
    Mean result             : 7.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 0.5
    Assigned value          : 1451.6
    Target concentration    : 7.258
    Corrected concentration : 1420
    Recovery                : 97.823092

  Sample: 5 | Dilution factor: 200
    Replicates              : 1
    Mean result             : 6.1
    SD result               : NA
    CV result               : NA
    Specimen content        : 0.5
    Assigned value          : 1209.8
    Target concentration    : 6.049
    Corrected concentration : 1220
    Recovery                : 100.84311

  Sample: 6 | Dilution factor: 200
    Replicates              : 1
    Mean result             : 7.5
    SD result               : NA
    CV result               : NA
    Specimen content        : 0.5
    Assigned value          : 1326.4
    Target concentration    : 6.632
    Corrected concentration : 1500
    Recovery                : 113.08806
代码
plot(ep34_c2_result, type = "summary")

EP34 附录 C:ivdtools 与标准原文结果对照
标准位置 统计量 标准结果 ivdtools结果
appendix_c1 / neat mean_recovery 100.00 100.000
appendix_c1 / neat lower_ci 100.00 100.000
appendix_c1 / neat upper_ci 100.00 100.000
appendix_c1 / 1/2 mean_recovery 100.50 100.496
appendix_c1 / 1/2 lower_ci 96.06 96.072
appendix_c1 / 1/2 upper_ci 104.89 104.920
appendix_c1 / 1/4 mean_recovery 104.99 104.987
appendix_c1 / 1/4 lower_ci 101.45 101.483
appendix_c1 / 1/4 upper_ci 108.50 108.492
appendix_c1 / 1/10 mean_recovery 115.13 115.132
appendix_c1 / 1/10 lower_ci 111.33 111.266
appendix_c1 / 1/10 upper_ci 119.05 118.999
appendix_c1 / 1/20 mean_recovery 135.49 135.487
appendix_c1 / 1/20 lower_ci 124.43 124.380
appendix_c1 / 1/20 upper_ci 146.69 146.595
appendix_c2 / neat mean_recovery 100.00 100.000
appendix_c2 / neat lower_ci 100.00 100.000
appendix_c2 / neat upper_ci 100.00 100.000
appendix_c2 / 1/2 mean_recovery 101.33 101.334
appendix_c2 / 1/2 lower_ci 97.95 97.953
appendix_c2 / 1/2 upper_ci 104.71 104.715
appendix_c2 / 1/10 mean_recovery 101.55 101.553
appendix_c2 / 1/10 lower_ci 95.31 95.306
appendix_c2 / 1/10 upper_ci 107.80 107.799
appendix_c2 / 1/50 mean_recovery 102.35 102.349
appendix_c2 / 1/50 lower_ci 96.88 96.883
appendix_c2 / 1/50 upper_ci 107.81 107.814
appendix_c2 / 1/200 mean_recovery 102.71 102.551
appendix_c2 / 1/200 lower_ci 96.82 96.735
appendix_c2 / 1/200 upper_ci 108.60 108.367

表 C1 的回收率随稀释加深而明显升高,1/10 和 1/20 稀释不能满足示例要求;表 C2 在 1/200 稀释时仍保持相对稳定。表 C2 的最高稀释水平受原文只公布一位小数观测均值影响,软件由显示值重算的汇总与原文存在最多约 0.23 个百分点的差异。

8.2.8 高剂量钩状效应

EP34 的钩状效应图只给出示意轨迹,没有逐浓度原始响应。下面使用教学数据演示 hook_effect(),这些数值不来自标准原文。

代码
hook_data <- expand.grid(
  concentration = c(1, 2, 3, 4, 5, 6, 7, 8),
  replicate = 1:3,
  KEEP.OUT.ATTRS = FALSE
)
hook_mean <- c(100000, 150000, 180000, 178000, 183000, 160000, 110000, 80000)
hook_data$response <-
  rep(hook_mean, times = 3) + rep(c(-300, 0, 300), each = 8)
head(hook_data, 6)
  concentration replicate response
1             1         1    99700
2             2         1   149700
3             3         1   179700
4             4         1   177700
5             5         1   182700
6             6         1   159700
代码
hook_result <- hook_effect(
  hook_data,
  concentration = "concentration",
  response = "response",
  uloq = 1.5,
  uloq_response = 130000,
  conf.level = 0.95
)
hook_result

High-dose hook-effect experiment
  ULoQ concentration: 1.5
  ULoQ response: supplied
  Series: 1

  Series: all
    ULoQ concentration           : 1.5
    ULoQ response                : 130000
    Hook concentration           : 6
    Hook response                : 160000
    First in-range concentration : 7
    First in-range response      : 110000
    Highest tested concentration : 8
    Hook lower bound             : NA

  Concentration-level results

  Series: all | Concentration: 1
    Replicates    : 3
    Mean response : 1e+05
    SD response   : 300
    CV response   : 0.3
    SE response   : 173.20508
    CI lower      : 99254.759
    CI upper      : 100745.24

  Series: all | Concentration: 2
    Replicates    : 3
    Mean response : 150000
    SD response   : 300
    CV response   : 0.2
    SE response   : 173.20508
    CI lower      : 149254.76
    CI upper      : 150745.24

  Series: all | Concentration: 3
    Replicates    : 3
    Mean response : 180000
    SD response   : 300
    CV response   : 0.16666667
    SE response   : 173.20508
    CI lower      : 179254.76
    CI upper      : 180745.24

  Series: all | Concentration: 4
    Replicates    : 3
    Mean response : 178000
    SD response   : 300
    CV response   : 0.16853933
    SE response   : 173.20508
    CI lower      : 177254.76
    CI upper      : 178745.24

  Series: all | Concentration: 5
    Replicates    : 3
    Mean response : 183000
    SD response   : 300
    CV response   : 0.16393443
    SE response   : 173.20508
    CI lower      : 182254.76
    CI upper      : 183745.24

  Series: all | Concentration: 6
    Replicates    : 3
    Mean response : 160000
    SD response   : 300
    CV response   : 0.1875
    SE response   : 173.20508
    CI lower      : 159254.76
    CI upper      : 160745.24

  Series: all | Concentration: 7
    Replicates    : 3
    Mean response : 110000
    SD response   : 300
    CV response   : 0.27272727
    SE response   : 173.20508
    CI lower      : 109254.76
    CI upper      : 110745.24

  Series: all | Concentration: 8
    Replicates    : 3
    Mean response : 80000
    SD response   : 300
    CV response   : 0.375
    SE response   : 173.20508
    CI lower      : 79254.759
    CI upper      : 80745.241
代码
plot(hook_result)

本例在 7 的已测浓度首次回落至 ULoQ 响应范围内,因此函数把前一个已测浓度 6 报告为 hook_concentration。该结果是由试验浓度间距限定的界限,不是转折点。