Introduction

I summarize in Table 1 the results of a single-center, exploratory, cross-sectional study of post-infectious Myalgic Encephalomyelitis (PI-ME/CFS) conducted by the National Institute of Health, from October 2016 to January 2022. All the details of the study are available at this address. I run, for each measure, a statistical test. The analysis was performed by a custom R script (see the last paragraph).

Results

After correction for multiple comparisons, the only statistically significant difference between patients and controls is the number of bacterial species in the stool sample, which is lower in patients than in healthy controls (LTK, measure 11). If we do not consider the correction for multiple comparisons, we find also a lower oxygen consumption at the anaerobic threshold during the cardiopulmonary exercise test (ATVO2rel, measure 1) and a reduced variability in heart rate over a 24-hour period (SDNNi, measure 9). Perhaps surprisingly, both the total power consumed by the individuals as measured by a metabolic chamber (TBEU, 3) and the oxygen consumption of peripheral blood mononuclear cells per unit of time (MEFA, 8), are the same in patients and controls.

Table 1. For the meaning of the labels in the Test column, see below. The second column is the number associated with the test on the Results page (here). Healthy controls are indicated with the letter A, ME/CFS patients with B. The number of participants is labeled with the letter n. The means are marked with the letter m and the standard errors with the letter s. The p values are calculated with the double-tailed Student’s T-test and the corrected p values (last column) are computed employing the Benjamini-Hochberg correction.

ATVO2rel [1]. The Relative Volume of Oxygen at the Anaerobic Threshold (ATVO2rel) was determined during a cardiopulmonary exercise test (CPET). ATVO2rel represents the volume of oxygen consumed when a participant reaches AT, adjusted for their weight during the CPET. Results compared Healthy Volunteer Participants to ME/CFS Participants. Unit of Measure: mL/kg/min.

RER [2]. The Respiratory Exchange Ratio (VCO2/VO2) was determined during a cardiopulmonary exercise test (CPET). VCO2/VO2 is calculated by measuring the volume of carbon dioxide and oxygen the participant breathes during CPET. When the volume of carbon dioxide exceeds that of oxygen, it reflects a change from aerobic metabolism to anaerobic metabolism. When a participant has a Respiratory Exchange Ratio (RER) during CPET that is equal to or greater than 1.1 it is considered a sufficient exercise effort. Results compared Healthy Volunteer Participants to ME/CFS Participants. Unit of measure: ratio without dimensions.

TBEU [3]. Total body energy use. The total amount of energy expended per unit of time as measured by whole-room indirect calorimetry. This method measures the amount of oxygen consumed and carbon dioxide produced which can be used to calculate the amount of energy produced by biological oxidation and is measured by kilocalories per day. Measures were taken from Healthy and ME/CFS participants. Unit of measure: kcal/day.

WBC [4]. A comparison of the White Blood Cell (WBC) Count, i.e., a measurement of the number of white blood cells in the blood, of the two populations, is reported. Low values can suggest immune deficiencies. High values can suggest infection or inflammation. Blood was collected from healthy and ME/CFS participants at baseline. Unit of measure: number of WBCs(K)/uL.

ESR [5]. A comparison of the results of the Erythrocyte Sedimentation Rate (ESR), i.e., a measure of how quickly red blood cells settle at the bottom of a test tube, in the two populations is reported. A faster-than-normal rate of settling suggests inflammation. Blood was collected from healthy and ME/CFS participants at baseline. Unit of measure: mm/h.

CRP [6]. A comparison of the results of C-Reactive Protein (CRP), i.e., a measurement of a protein that is made by the liver, in the two populations is reported. A higher level than normal suggests inflammation. Blood was collected from healthy and ME/CFS participants at baseline. Unit of measure: mg/L.

WBC_CSF [7]. A comparison of the White Blood cell Count in Cerebrospinal Fluid (WBC in CFS), i.e., a measurement of the number of white blood cells in the cerebrospinal fluid, in the two populations is reported. Higher levels than normal suggest inflammation or infection in the central nervous system. CSF was collected from healthy and ME/CFS participants at baseline. Unit of measure: number of WBCs(K)/uL.

MEFA [8]. Mitochondrial Extracellular Flux Assay. The oxygen consumption rate of peripheral blood mononuclear cells per unit of time when the cells are in their normal, unprovoked state of function measured in Basal (units) was measured in Healthy and ME/CFS participants at baseline. This is a standard measure of mitochondrial respiration that is responsible for providing energy to cells. Unit of measure: Pmol/min.

SDNNi [9]. Effect of Maximal Exertion on Autonomic Function as Measured by SDNNi in Healthy and ME/CFS Participants. Variability of the time between heartbeats can be used to measure alterations in autonomic function. The Standard Deviation of the Normal-to-Normal Intervals (SDNNi) is a measure of the amount of beat-to-beat variability between each normal heartbeat collected over a 24-hour period. These results compare the SDNNi in healthy and ME/CFS participants at baseline. Unit of Measure: ms.

LTK [11]. Stool samples were taken from Healthy and ME/CFS participants at baseline. The number of specific types of bacteria, using the Least Known Taxon (LTK) units, was measured with the Shotgun Metagenomic method. Unit of measure: LTK.

TOVA [12]. The TOVA is a measure of cognitive function that assesses attention and inhibitory control. The test is used to measure a number of variables involving the test taker’s response to either a visual or auditory stimulus measured during a “simple, yet boring, computer game”. These measurements are then compared to the measurements of a group of people without attention disorders who took the T.O.V.A. The range of values for the score, after normalization to the population, is -10 to +10, with a lower score representing a worse attention score. The test was administered to Healthy and ME/CFS participants at baseline. Unit of measure: score on a scale.

PASAT [12]. The PASAT is a measure of cognitive function that assesses auditory information processing speed and flexibility, as well as calculation ability. Single digits are presented every 3 seconds and the patient must add each new digit to the one immediately prior to it. The test score is the total number of correct trials out of a possible 60. The test was administered to Healthy and ME/CFS participants at baseline. Unit of measure: score on a scale.

Methods

I manually copied in a csv file the results of the measures (including the number of participants of each measure, the mean values, and their standard errors) taken from the results page of the NIH website (here). I then read the file with a custom R script (see below) that performs the Student’s T-test (double-tailed) for each comparison and corrects the p values with the Benjamini-Hochberg method. When the interquartile range (IQR) was reported, I derived the standard deviation (SD) according to the formula IQR = 1.35*SD. The analysis was performed considering only the means and the standard deviations because the actual distributions of the measures were not available.

Download the csv file with the results: Data.csv

The R script that performs the statistical analysis on Data.csv:

# file name: NIH_ME_CFS
#
# Reading the input
#
NIH_data<-read.csv("Data.csv",sep=";",header = T)
attach(NIH_data) 
len<-length(Test) # number of tests
#
p<-c() # p values for all the comparisons
options(digits=2) # number of digits
#
# Student's T-test
#
for (i in 1:len) {
  sp<-sqrt(((nA[i]-1)*sA[i]^2 + (nB[i]-1)*sB[i]^2)/(nA[i]+nB[i]-2)) 
  TS<-abs(mA[i]-mB[i])/(sp*sqrt(1/nA[i] + 1/nB[i])) 
  p[i]<-2*pt(-TS,df=nA[i]+nB[i]-2,lower.tail = TRUE, log.p = FALSE)   
}
#
# Correction
#
p_cor<-p.adjust(p, method = "hochberg")
#
# Writing the results
#
NIH_statistics<-data.frame(Test,Test_N,nA,nB,mA,mB,sA,sB,p,p_cor)

Leave a comment