がん 非がん
感染  a  b
未感染 c  d

attributable risk : x
x={a/(a+b)-c/(c+d)} / {a/(a+b)}

options(digits=3)
f=function(p,q=0.99){ # p:pyroli in population, q:pyroli in cancer
a=13*q
c=13*(1-q)
b=13000*p
d=13000*(1-p)
x=(a/(a+b)-c/(c+d)) / (a/(a+b)) # attributable to pyroli(+)
y=(c/(c+d)-a/(a+b)) / (c/(c+d)) # qtteibutabel to pyroli(-)
round(ifelse(x>0,x,y),3)
}

g=Vectorize(f)
g((1:19)/20)

p=seq(0.01,0.99,0.01) # pylori in population
q=seq(0.01,0.99,0.01) # pylori in cancer
z=outer(p,q,f)
image(p,q,z,bty='l',nlevels=20,xlab='pyroli in population',
ylab='pyroli in cancer')
contour(p,q,z,bty='l',nlevels=20,xlab='pyroli in population',
ylab='pyroli in cancer',add=T)