処方量のタイトレーションが

MikuHatsune2014-07-16

こんな感じのデータを見た。
基本的に痛み止めとして処方されている量から、急に痛みが出た時の頓服量(レスキュー)を知りたいわけだが、データがこんな感じなので予測ができず、タイトレーションは適宜やってみて決める、という話。
相関係数がなぜかspearmanでとってて、実際のデータは0.55程度だった。

V1	V2
50	48
50	52
100	52
100	130
50	163
50	146
100	163
100	231
100	259
50	261
100	354
100	378
200	333
400	547
400	409
300	373
200	488
200	490
300	348
300	497
300	518
300	584
200	589
100	706
50	715
100	795
300	797
500	779
900	800
700	100
300	607
300	474
200	347
500	350
500	491
200	425
800	200
800	100
500	376
700	800
400	224
100	462
100	286
100	244
50	167
100	279
200	352
200	617
300	669
400	696
300	301
400	293
400	415
300	477
300	566
300	634
300	455
200	404
100	221
50	116
50	333
100	394
50	190
50	101
100	247
100	348
200	402
300	565
300	636
300	694
100	547
100	617
100	673
200	734
100	751
xl <- c(0, 1000)
yl <- c(0, 800)
plot(xy, xlim=xl, ylim=yl ,pch=16, xlab="Base opioid dose", ylab="Fentanyl oral dose")
abline(h=seq(0, 800, by=50), v=seq(0, 1000, by=100), lty=3)
lm0 <- lm(xy[,2] ~ 0 + xy[,1])
abline(0, lm0$coefficients, col=2)
cor(xy[,1], xy[,2], method="spearman")
[1] 0.3737153


 
相関が低いので、痛み止めの基本処方量からレスキュー量は決められません、と言っているわりには、図では線形回帰で求めた直線が引いてある。実際の直線は右下の外れ値にかなり引っ張られていて、もっと寝た直線になっている。やりたいならロバスト回帰なんてのもあったかも知れない。
比例関係にない、というのはそんな感じだが、無理やりMICでもとればそこそこの相関がある。

library(minerva)
mine(xy[,1], xy[,2], alpha=0.9)$MIC
[1] 0.8035229


 
たぶんこういうデータを見たら、薬理学的に考えても普通はシグモイドを考える。結構無理やりだけどフッティングさせたらこんな感じ。

library(drc)
ll <- drm(xy[,2] ~ xy[,1], fct=L.4(fixed=c(-0.01, 50, 800, NA)), robust="median")
plot(ll, log="", type="none", xlim=xl, ylim=yl, col=2, xlab="Base opioid dose", ylab="Fentanyl oral dose")
points(xy, pch=16)
abline(h=seq(0, 800, by=50), v=seq(0, 1000, by=100), lty=3)


 
実際の使い方は50μgから使い始めて量を増やす、ということになっているらしい。この使い方でうまくいくのならこれでいいんだろう(適当