PK1-1(血漿中濃度)

演習の本をRでこなしていくことにした。

ProductName ファーマコキネティクス―演習による理解
杉山 雄一,山下 伸二,加藤 基浩
南山堂 / ¥ 6,300 ()
在庫あり。

設問1

β層の消失速度をもとめて、それを用いてα層の消失速度を決定する。

t <- c(1,2,3,6,13,23,30,39,49)
c <- c(68.2, 51.1, 43.2, 34.0, 18.3, 11.5, 10.7, 10.6, 6.78)

23時間からの濃度からβ層の消失速度を求める

logc <- log(c)
result <- lm(logc[6:9] ~ t[6:9])
coef(result)
 (Intercept)      t[6:9] 
 2.93770720 -0.01888941 

β層の消失速度が決まったので、次は23時間までの濃度からβ層の寄与を引いた濃度からα層の消失速度を決定する

beta <- function(t){exp(2.937707-0.01889*t)}
alogc <- c[1:5] - beta(t)[1:5]
aresult <- lm(alogc ~ t[1:5])

これでα層β層それぞれの消失速度がもとまる

result

Call:
lm(formula = logc[6:9] ~ t[6:9])

Coefficients:
(Intercept)       t[6:9]  
    2.93771     -0.01889  

aresult

Call:
lm(formula = alogc ~ t[1:5])

Coefficients:
(Intercept)       t[1:5]  
     3.9916      -0.2088  

求めるモデルは

exp(3.9916-0.2088*t)+exp(2.937707-0.01889*t)

pk1-1-1

設問2

ラフに求めたA,B,alpha,betaを初期値として最小自乗法でフィッティングを行う。1exp,2expでやってみて、どっちのあてはまりがよいか考える

t <- c(1,2,3,6,13,23,30,39,49)
conc <- c(68.2, 51.1, 43.2, 34.0, 18.3, 11.5, 10.7, 10.6, 6.78)
dat <- data.frame(conc,t)
result <- nls(conc ~ a*exp(-alpha*t),start=list(a=50,alpha=0.045))
summary(result)

Formula: conc ~ a * exp(-alpha * t)

Parameters:
      Estimate Std. Error t value Pr(>|t|)    
a     63.26990    5.39879  11.719 7.45e-06 ***
alpha  0.08359    0.01777   4.706  0.00219 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 6.608 on 7 degrees of freedom

Number of iterations to convergence: 14 
Achieved convergence tolerance: 7.74e-06 

f <- function(t){63.2699*exp(-0.0836*t)}
plot(f,0,50,xlim=c(0,50),ylim=c(0,70),xlab="Time",ylab="Conc")
par(new=T)
plot(t,conc,xlim=c(0,50),ylim=c(0,70),axes=F,xlab="",ylab="")

pk1-1-3

一層の消失モデルだと特に遅い時間の当てはめが悪い。ちなみにRだとAIC関数使えば適合度がでる。

t <- c(1,2,3,6,13,23,30,39,49)
conc <- c(68.2, 51.1, 43.2, 34.0, 18.3, 11.5, 10.7, 10.6, 6.78)
dat <- data.frame(conc,t)
result <- nls(conc ~ a*exp(-alpha*t)+b*exp(-beta*t),start=list(a=50,alpha=0.277,b=20,beta=0.0198))
summary(result)
f <- function (t){55.75*exp(-0.3769*t)+29.157*exp(-0.03189*t)}
plot(f,0,50,xlim=c(0,50),ylim=c(0,70),xlab="Time",ylab="Conc")
par(new=T)
plot(t,conc,xlim=c(0,50),ylim=c(0,70),axes=F,xlab="",ylab="")

pk1-1

プロットするときにpar関数で上書きするのと、xlim,ylimを明示して軸をきちんとそろえつつ、目盛やタイトルを上書きして重ねないように気をつける。

「タビスルカフェ sofarii」にいった

吉原商店街にあるカフェに行った。

まったりできていい感じ

1242388850

タイカレー

1242388845

つけナポリタンは旨い

1242388840 1242388854

ベーグル

1242388851

ランチタイムでなくて、カフェかバーの時間帯にmacbookもっていけばマッタリできるかな。読書しにいっても良いかも。

MooseでLisp(MoospのFunction::Add)

やさしい Lisp の作り方 by Java and by C#を参考に書いてみる。

REPLまで出来て

(+ 1 2)

は動くのに

(+ (+ 1 2) 3)

が動かなくて、evalの再帰が悪いのかと思ったら、Functionのほうだった。

sub fun {
  my ($self, $arguments) = @_;
  my $arg1;
  my $ret =  Moosp::Integer->new(value => 0);
  return $ret if ($arguments->isa('Moosp::Nil'));

  while (1) {
    $arg1 = $self->eval->eval($arguments->car);
    $ret = $ret->add($arg1);
    last if ($arguments->cdr->isa('Moosp::Nil'));
    $arguments = $arguments->cdr;
  }
  return $ret;
}

carがfunctionの場合はcdr部は全て評価済みにしておかないといけないんだった。

やっとうまく動いた

Moosp> (+ (+ 1 2) (+ 3 4))
10

tak実行が見えてきた。

大山でつけ麺

海老のつけ麺。

1242302397 1242302400

平打ち麺にスープがまとわりついて、美味い。

が、麺がちょっとダマになってしまいちょっと食べにくかった。そのうちまたつけ麺の気分の時に行く。

畑に明日葉を植えた

牛肥も撒いて、少し日をおいてから植える。

ほうっておいても増えそうなアシタバを植えてみた。

1242301947

となりの先輩方にリサーチをかけたところ

「今の時期だと茄子とかトマトがいいんじゃないの」

とのことなので、近所のホームセンターへ茄子の苗を買いにいったが、加茂茄子しかなかった。あとは、トマトも謎の品種ばかりだった。

というわけで、変わった品種の苗ばかりを植えた。あとは奥のほうにゴーヤーを3つばかし。

1242301952

植えたといっても畝一つちょいで、まだまだあるので、今週末はオクラでも植えてやろうかというところ。

たまか

栃木にこだわっていて、瓶を包む新聞紙も下野新聞という(謎)。

1242138038

味わいは辛口で、どっちかっていうと静岡のお酒に近いかなぁとか思うので逆に新鮮さがなくてスーッと飲んで終了みたいな。

ivivc(R)

ivivcというパッケージを発見。PKfitでkelとかVdを求めておけばこれで対話的に色々(というかルーチーンワークが)できるらしい。

demoのflashも用意されている。

****************************************************************************
*                                                                          *
*                                  ivivc                                   *
*                                 v 0.1.4                                  *
*                                                                          *
* In vitro-in vivo correlation (IVIVC) is defined as the correlation       *
* between in vitro drug dissolution and in vivo drug absorption.           *
* This package is used to develop and validate an IVIVC model.             *
* The following steps wii be conducted as follows:                         *
* ->1: Input/Edit In Vivo Absorption Data: IV, Oral solution or IR drug    *
* ->2: Develop an IVIVC Model: Fitting IV, Oral solution or IR drug        *
* ->3: Input/Edit In Vitro Dissoution Data and                             *
*      In Vivo absorption Data: ER drug with Different Release Rates       *
* ->4: Develop an IVIVC Model: Model Dependent Method                      *
* ->5: Evaluate an IVIVC model: Prediction Error                           *
*                                                                          *
*           Please type 'run()' to get started.                            *
*                                                                          *
****************************************************************************

runしてdemoするとなんか一瞬で終わる。

Rでここまでのワークフローを対話的にやらすパッケージってのは自由度が少ない気もするが、あとでまた。

とりあえずPKfitをいじろうと思ってるんだけど、pdfのマニュアルがいい加減すぎるんだよね。

塔のへつりと大内宿

ゴールデンウィークには渋滞するとわかっていても行かなければいけない場所があったりする。観光の一つや二つ行っとかないと、、、みたいな。

今回は大内宿。塔のへつりから大内宿までなんと3時間半もかかった。普通にいくと30分もかからんような道のりも大内宿の駐車場空き待ちで大渋滞。さすがゴールデンウィーク、おそるべし、藁葺き。

1242044360 1242044368

1242044376 1242044383

そういえば、隣でタクシーのおっちゃんが昔はへつりは通れたんだよみたいな話をしてたので帰ってから調べてみたら塔のへつり の廃道をみつけた。これは面白い。それにしてもあんな道はちょっと勘弁して欲しいなぁ。

大内宿

1242044379 1242044372

白川郷っていったことないんだよなぁ。いってみたい。

はじめての薬物速度論

はじめて読むならこれがお薦めか。ケモインフォマティクスな僕にとってはある程度数式とか統計の話がくっついていたほうが、知識と照らし合わせながら覚えていけるので分かりやすかった。

ProductName はじめての薬物速度論
加藤 基浩
南山堂 / ¥ 1,995 ()
在庫あり。

  • クリアランスは薬物消去能を血液量で表現
  • AUMCは血漿中濃度に時間をかけたもの
  • 肝クリアランスと肝固有クリアランスの違い

ちょっと7章だけプロットしてみた。

Cp <- function(t){86.22 * exp(-4.55 * t) + 13.63 * exp(-0.438 * t)
Cppo <- function(t){456700/(9128*(4.567-0.438)) * (exp(-0.438 * t) - exp(-4.567 * t))}
par(mfrow = c(2,1))
plot(Cppo,0,10)
plot(Cp,0,10)

po,iv

演習の多そうなこっちもやっとくべきか。

ProductName ファーマコキネティクス―演習による理解
杉山 雄一,山下 伸二,加藤 基浩
南山堂 / ¥ 6,300 ()
在庫あり。

PBPKモデルのシミュレーション

我が国における医薬品開発に関する提言探索的早期臨床試験とPK/PD 試験の推進という資料で。

PB-PKモデルは概念的なコンパートメントモデルを仮定せず,薬物が経口あるいは非経口で投与された後に起きる吸収,分布,代謝及び排泄を,薬物の分子特性(蛋白結合,膜透過性,酵素親和性等)と生理学的・解剖学的データベース(組織容量,血流速度等)により表現した物理学的な薬物動態モデルである.

これを、思いついた時に試せるような状況にしておきたいのだが、なかなか良い書籍がみつからない。