At a glance

No luck with finding FMTs

As I mentioned last week, finding FMTs was turning out to be rather tricky. This week I have determined that it is going to be pretty much impossible with any accuracy. Many of the forum posts asking how an FMT should be coded prior to the semi-standardized codes of CPT 44705 and HCPCS G0455 developed in 2013. The answers included

And sometimes a combination was used.

To make matters worse, these CPT/HCPCS codes are not directly included in the NRD, but rather they are grouped into bigger umbrella buckets using a proprietary Clinical Classiciation Software which groups the procedures by a more general category. This makes it impossible to definitely confirm that a particular therapeutic procedure was used if it was coded in CPT/HCPCS.

Sources: 1 2 3 4

Contingency plan

At this point, determining readmission rates after FMT procedures is not possible with the data we have.

We still have two very good datasets in the NIS and the NRD. The challenge is finding something novel in them that is non-trivial and hasn’t been extensively researched.

Having already developed the logic for determining C. diff readmissions, I decided to take a peek at the comorbidity variables. Looking at a small sample from 2010, Age and having a Renal Failure comorbidity were both highly significant predictors.

## 
## Call:
## svyglm(formula = readmitted ~ age.start + cm_renlfail, design = as.svrepdesign(cdiff.design), 
##     family = quasibinomial, return.replicates = TRUE)
## 
## Survey design:
## as.svrepdesign(cdiff.design)
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -2.047623   0.153542 -13.336  < 2e-16 ***
## age.start    0.012270   0.002189   5.604 2.63e-08 ***
## cm_renlfail  0.438832   0.077488   5.663 1.88e-08 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for quasibinomial family taken to be 0.999678)
## 
## Number of Fisher Scoring iterations: 4
##                            2.5 %    97.5 %
## (Intercept) 0.1290412 0.09550655 0.1743508
## age.start   1.0123458 1.00801084 1.0166995
## cm_renlfail 1.5508950 1.33237002 1.8052608

If we are interested in the probability of being readmitted given the age of the patient and whether or not they have a renal failure comorbidity, that is Pr(readmitted | age.start, cm_renlfail), we can set up the following linear logistic regression, letting \(X_1\) be the patient’s age, and \(X_2\) is the binary variable, whether a renal failure comorbidity was present:

\[\begin{equation} \begin{split} p(X) &= p(Y = 1 | X) \\ &= \beta_0 + \beta_1 X_1 + \beta_2 X_2\\ \end{split} \end{equation}\]

Because we need our output to be between 0 and 1, we use the logistic function:

\[\begin{equation} \begin{split} p(X) &= \frac{e^{\beta_0 + \beta_1 X_1 + \beta_2 X_2}}{1 + e^{\beta_0 + \beta_1 X_1 + \beta_2 X_2}}\\ \frac{p(X)}{1 - p(X)} &= e^{\beta_0 + \beta_1 X_1 + \beta_2 X_2}\\ \end{split} \end{equation}\]

The betas are given to us in the above table, so we can substitute those in:

\[\begin{equation} \begin{split} p(X) &= \frac{p(X)}{1 - p(X)} &= e^{-2.047623 + 0.01227 X_1 + 0.438832 X_2}\\ \end{split} \end{equation}\]

Plotting this function, we see the odds ratio rise with age. Patients with renal failure are always at a much higher risk of being readmitted.

Here, we can see the odds of being readmitted for patients over 75 with a renal failure comorbidity is greater than 50%.

Next Steps

This was just run on a small sample from 2010. I am going to run the full dataset build and try running the same model on it and compare year over year.