Skip to contents

Applies UK algorithm on deceased donor's Kidney allocation for transplantation. Ordering of waitlisted candidates for a given donor according to UK transplant algorithm.

Usage

uk(
  DRI = "D1",
  dA = c("1", "2"),
  dB = c("15", "44"),
  dDR = c("1", "4"),
  dABO = "O",
  donor.age = 65,
  data = candidates.uk,
  D1R1 = 1000,
  D1R2 = 700,
  D1R3 = 350,
  D1R4 = 0,
  D2R1 = 700,
  D2R2 = 1000,
  D2R3 = 500,
  D2R4 = 350,
  D3R1 = 350,
  D3R2 = 500,
  D3R3 = 1000,
  D3R4 = 700,
  D4R1 = 0,
  D4R2 = 350,
  D4R3 = 700,
  D4R4 = 1000,
  ptsDial = 1,
  a1 = 2300,
  a2 = 1500,
  b1 = 1200,
  b2 = 750,
  b3 = 400,
  m = 40,
  nn = 4.5,
  o = 4.7,
  mm1 = -100,
  mm23 = -150,
  mm46 = -250,
  pts = -1000,
  df.abs = cabs,
  n = 2,
  check.validity = TRUE
)

Arguments

DRI

Donor Risk Index group (D1, D2, D3, D4)

dA

A two elements character vector donor's HLA-A typing.

dB

A two elements character vector donor's HLA-B typing.

dDR

A two elements character vector donor's HLA-DR typing.

dABO

A character value with ABO blood group (O, A, B, AB).

donor.age

A numeric value with donor's age.

data

A data frame containing demographics and medical information for a group of waitlisted transplant for UK transplant.

D1R1

A numeric value (0 - 1000) for the combination of indexes.

D1R2

A numeric value (0 - 1000) for the combination of indexes.

D1R3

A numeric value (0 - 1000) for the combination of indexes.

D1R4

A numeric value (0 - 1000) for the combination of indexes.

D2R1

A numeric value (0 - 1000) for the combination of indexes.

D2R2

A numeric value (0 - 1000) for the combination of indexes.

D2R3

A numeric value (0 - 1000) for the combination of indexes.

D2R4

A numeric value (0 - 1000) for the combination of indexes.

D3R1

A numeric value (0 - 1000) for the combination of indexes.

D3R2

A numeric value (0 - 1000) for the combination of indexes.

D3R3

A numeric value (0 - 1000) for the combination of indexes.

D3R4

A numeric value (0 - 1000) for the combination of indexes.

D4R1

A numeric value (0 - 1000) for the combination of indexes.

D4R2

A numeric value (0 - 1000) for the combination of indexes.

D4R3

A numeric value (0 - 1000) for the combination of indexes.

D4R4

A numeric value (0 - 1000) for the combination of indexes.

ptsDial

A numeric value for the points corresponding to each month on dialysis.

a1

A numeric value for HLA match and age combined formula: b1*cos(age / 18)+a1

a2

A numeric value for HLA match and age combined formula: b2*cos(age / 18)+a2

b1

A numeric value for HLA match and age combined formula: b1*cos(age / 18)+a1

b2

A numeric value for HLA match and age combined formula: b2*cos(age / 18)+a2

b3

A numeric value for HLA match and age combined formula: b3*sin(age / 50)

m

A numeric value for matchability formula: m * (1 + (MS / nn) ^ o)

nn

A numeric value for matchability formula: m * (1 + (MS / nn) ^ o)

o

A numeric value for matchability formula: m * (1 + (MS / nn) ^ o)

mm1

A numeric value to penalize 1 mm.

mm23

A numeric value to penalize 2-3 mm.

mm46

A numeric value to penalize 4-6 mm.

pts

A negative value with penalization for B candidates.

df.abs

A data frame with candidates' antibodies.

n

A positive integer to slice the first candidates.

check.validity

Logical to decide whether to validate input.

Value

An ordered data frame with a column matchability, Tier, pointsUK, ...

Examples

if (FALSE) {
uk(DRI = 'D1', dA = c("1","2"), dB = c("15","44"), dDR = c("1","4"),
dABO = "O", donor.age = 65, data = candidates.uk,
D1R1 = 1000, D1R2 = 700, D1R3 = 350, D1R4 = 0,
D2R1 = 700, D2R2 = 1000, D2R3 = 500, D2R4 = 350,
D3R1 = 350, D3R2 = 500, D3R3 = 1000, D3R4 = 700,
D4R1 = 0, D4R2 = 350, D4R3 = 700, D4R4 = 1000,
ptsDial = 1,
a1 = 2300,  a2 = 1500, b1 = 1200, b2 = 750, b3 = 400,
m = 40, nn = 4.5, o = 4.7,
mm1 = -100, mm23 = -150, mm46 = -250,
pts = -1000,
df.abs = cabs, n = 2, check.validity = TRUE)
}