File Exchange

image thumbnail

Passing and Bablok regression

version 1.1.0.0 (570 KB) by Andrea Padoan
Passing & Bablok regression is a linear regression procedure usefull for comparing clinical methods

3 Downloads

Updated 16 Jan 2010

View Version History

View License

Passing & Bablok described this procedure in the 1983.
This procedure is ideal if you want to compare 2 different methods (instrument) which measure the same chemical analyte in the same sample.
Classical linear regression method assume that variables X and Y are normal distributed and with a measurement error costant over the range of concentrations.
However, in method comparison studies we generally find that the distribution of measurements is not normal and that variance of errors is not costant.
Passing & Bablok regression does not require specific assumptions regarding the distributions of the expected values or the error terms.

Description of the Function PassingBablok (x,y):

INPUT: x and y are arrays in column of values obtained measuring the same sample with 2 different analytical methods. It means that if you have i.e. i = 1....N samples, x (i) is the value obtained measuring the sample (i) with the method A and y (i) is the value obtained measuring the same sample (i) with the method B.
OUTPUT:
1) Slope of the regression line
2) 95% CI of the slope (slope_UB and slope_LB)
3) intercept of the regression line
4) 95% CI of the intercept (Intercept_UB and Intercept_LB)
This function also perform a statistical test of linearity and return the p value, using the cumsum adapted method (Kolgomogorv-Smirnov adapted test) described by Passing and Bablok.
Three Graphs are plotted:
a. Regression Graph, scatter plot with regression line
b. Ranked residual Graph
c. cumsum statistic

An example file are supply.

Cite As

Andrea Padoan (2020). Passing and Bablok regression (https://www.mathworks.com/matlabcentral/fileexchange/24894-passing-and-bablok-regression), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (3)

Felipe Antunes

When the data has two nan's followed only the first one is removed.

Dier Or

Very helpful, thank you.
One hint for those of you who can't use the command "combnk" (eg due to license reasons): Replace it by "nchoosek". It gives the same exact result but in contrast to combnk the latter command isn't part of the statistics Toolbox.

m_g

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!