# M3 method (Censoring Observations)

**URL:** <https://discourse.pumas.ai/t/m3-method-censoring-observations/833>\
**Category:** Estimation\
**Created:** [February 21, 2023, 8:55pm UTC](https://discourse.pumas.ai/t/m3-method-censoring-observations/833 "2023-02-21T20:55:08Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ahmed.salem](https://avatars.discourse-cdn.com/v4/letter/a/858c86/32.png) [@ahmed.salem](https://discourse.pumas.ai/u/ahmed.salem)\
**Post date:** [February 21, 2023, 8:55pm UTC](https://discourse.pumas.ai/t/m3-method-censoring-observations/833/1 "2023-02-21T20:55:08Z")

</div>

Hello,

I want to apply M3 method to my data (lower limit of quantification is 100 IU/L). The data points below the limit of quantification (BLQs) are reported as zero. I have two questions regarding the format of the data to allow Pumas apply M3 method

```auto
CONC ~ @. Censored(Normal(CP, CP*σ_prop),100.0,Inf)

```

1- should I keep the BLQs observations as zeros or convert them to 100 ?  
2- Do I have to include a new flagging columns to flag the BLQs or Pumas automatically censor any data point below or equal to 100 ?

Thanks

---

<div class="post-metadata">

**Author:** ![storopoli](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/storopoli/32/190_2.png) [@storopoli](https://discourse.pumas.ai/u/storopoli)\
**Post date:** [February 21, 2023, 9:58pm UTC](https://discourse.pumas.ai/t/m3-method-censoring-observations/833/2 "2023-02-21T21:58:25Z")

</div>

@ahmed.salem

You don’t need to convert them, just use it as it is. Pumas automatically flags BLQ observations based on the argument to make it convenient to you. We made everything in Pumas intuitive and user-oriented.  
Simply use the `Censored` distribution in the `@derived` block to specify the BLQ and that is it! No need to specify in `read_pumas`.

---

<div class="post-metadata">

**Author:** ![ahmed.salem](https://avatars.discourse-cdn.com/v4/letter/a/858c86/32.png) [@ahmed.salem](https://discourse.pumas.ai/u/ahmed.salem)\
**Post date:** [February 22, 2023, 12:06am UTC](https://discourse.pumas.ai/t/m3-method-censoring-observations/833/3 "2023-02-22T00:06:32Z")

</div>

Hi @storopoli , Thanks so much for the reply. I have two followup questions:

1- I looked into the output of `inspect` function and I saw calculated individual predictions for BQLs (which are represented as well in the output of `goodness_of_fit` function’s graphs). My understanding that the BQLs are censored and do not contribute to the parameter estimation. In that case what do the individual predictions represent ? since all observations have the same number which is the lower limit of quantification.

2- Does Pumas support using M3 method if I decided to use `Bayes.MCMC` instead of `LaplaceI`

Thanks

---

<div class="post-metadata">

**Author:** ![storopoli](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/storopoli/32/190_2.png) [@storopoli](https://discourse.pumas.ai/u/storopoli)\
**Post date:** [February 22, 2023, 12:39pm UTC](https://discourse.pumas.ai/t/m3-method-censoring-observations/833/4 "2023-02-22T12:39:23Z")

</div>

1. The BLQ values do contribute to the likelihood. They tell us that the observation was in some tail of the distribution and the model and parameters will assign some probability to that tail area. Additionally, `inspect` calculates individual predictions (ipreds). If you having all of them being calculated as BLQ values, then either your data (the `dv`s) have a lot of BLQs or there is something wrong with your model and/or data.
2. Yes you can use them in `Bayes.MCMC()` it will work.
