Predicting Conditions from PubMed Studies

I have an extensive collection of bacteria shifts reported from Studies on the US National Library of Medicine Studies for some 91 different conditions.

My past practice has been to deem over 75%ile to be a match if the study reported high and below 25%ile if the study reported a low. I then compute the number of hits for all samples and determine each person’s percentile. I then look at the reported incidence of the condition and see if there is a likely match.

For example, the condition is seen in 5% of the population: one person is at 45%ile – thus unlikely; another person is at 95%ile – thus borderline; a last person is at 99%ile – thus likely.

These 25%ile and 75%ile were arbitrary numbers point out of the air. I dislike arbitrary numbers. This attempts to find better numbers supported by evidence.


The root problem is that the study typically reports that the average of people with a condition is statistically different from the control group. This means that the only clear fact is whether the sample of people with this condition is higher or lower than the control group. This cannot be applied to an individual because the average is the average of a population with a wide range of values reported.


I looked at current available data and picked Depression to use for some test runs. We have 298 samples that are annotated with depression, and 226 different bacteria-shifts from studies). We divide our population into those that annotated with depression and those that annotated their sample but did not include depression.

  • Ombre reports 166 of the 226 bacteria from studies
  • BiomeSight reports 147 of the 226 bacteria from studies
  • uBiome reported 154 of the 226 bacteria from studies

This implies that Ombre may produce the best results, uBiome with intermediate, and Biomesight the worst.

The method is easy, finding the number of matches per sample for with depression and without depression. Then get the ratio between them. If the percentage is below 100, then we have false positives. We want the numbers to be over 100%. After going through the numbers, I came up with 109% as being a good threshold.

My first run was aggregating all lab data. We see good discrimination using 6%ile/94%ile. This drops almost in half at 10%ile/90%ile and disappears at 40%ile/60%ile. Aggregating all samples together has usually resulted in reduced statistical significance.

PercentileWithWithoutRatio
11.281.14112%
22.552.31111%
33.703.39109%
44.894.44110%
56.055.54109%
67.136.57109%
78.127.63106%
89.258.75106%
910.329.80105%
1011.4110.80106%
1517.1116.48104%
1921.2920.75103%
2932.1631.58102%
3033.1132.70101%

The next runs are being lab specific:

  • Biomesight:
    • 78 with depression,
    • 637 without depression.
    • We use a criteria of a ratio of 109% or better, so 6%ile/94%ile
PercentileWithWithoutRatio
11.261.10115%
22.862.48115%
33.993.57112%
45.224.68111%
56.475.82111%
67.686.87112%
78.517.96107%
  • Ombre Labs:
    • 78 sampleswith depression,
    • 340 samples without depression

The results blew me away! I give a possible explanation below.

PercentileWithWithoutRatio
10.750.8786%
22.091.05199%
33.421.70202%
45.052.32217%
56.603.00220%
68.193.61227%
79.594.27225%
810.974.93222%
912.445.57223%
1014.056.20226%
1115.546.85227%
1217.047.57225%
1318.888.23229%
4874.2331.98232%

And going to the defunct uBiome:

  • With: 103 Samples
  • Without: 376 Samples

It looks like using 22%ile and 78%ile yields a 109% ration or better.

PercentileWithWithoutRatio
11.751.32132%
23.092.06150%
34.302.89149%
45.303.73142%
56.324.64136%
67.175.59128%
78.206.48127%
89.327.37126%
910.358.30125%
1011.199.20122%
1112.1710.18119%
1213.1211.11118%
1314.1312.01118%
1415.1412.91117%
1516.1313.83117%
1616.9714.76115%
1717.8215.74113%
1818.7616.63113%
1919.6417.52112%
2020.4318.45111%
2121.3619.44110%
2222.1620.35109%
2323.0021.28108%
2424.0022.31108%
2524.9323.24107%
2625.9224.18107%
uBiome

Why does Ombre Labs blow away other Labs?

First, you need to understand the back story read The taxonomy nightmare before Christmas…[2019]. There is NO STANDARDIZATION. Different labs use different reference libraries. I would speculate that the reference libraries typically used for studies on the US National Library of Medicine is much closer to the reference libraries used by Ombre than those used by Biomesight.

It could be roughly compared to the studies using metric Bolts. Ombre nuts are metric (cm) and thus fit well. Biomesight nuts are imperial (inches), they do not fit as well, and on occasion may need to be forced. That is the likely nuts and bolts of it.

What does this mean for Predictions using PubMed Studies?

At the simplest level it means that my criteria for matching is different for each lab.

  • High is over 60%ile and Low is under 40%ile for Ombre
  • High is over 94%ile and Low is under 6%ile for Biomesight
  • High is over 78%ile and Low is under 22%ile for uBiome
  • Other labs: High is over 94%ile and Low is under 6%ile for Biomesight

We ended up with the same best to worst order for labs as predicted at the start — except the differences is a lot larger than I expected. It will likely take a week for me to modify the build processes and have numbers on Microbiome Prescription updated.

What about to Shotgun analysis (Thorne, Xenogene)? Answer is simple, we need a lot more samples from both of them.

Testing Discrimination Performance

I charted the with versus without depression for various labs below to see how strong the discrimination was. The charts are below with uBiome showing the best discrimination. At higher percentiles, ubiome is 3-4x more likely to detect depression over a not depression.

This hints that we need to reduce the percentiles

More work to do…

1 thought on “Predicting Conditions from PubMed Studies

Comments are closed.