6□4□5□2□1でカウントダウンする問題


流行っていたのでRでやってみた。
Python では既にやられている。

num <- c(6, 4, 5, 2, 1)
calc <- c("+", "-", "/", "*")

cmb <- as.matrix(expand.grid(calc, calc, calc, calc))

res <- NULL
for(i in seq(nrow(cmb))){
  eq <- num[1]
  for(j in 2:length(num)){
    eq <- paste(eq, num[j], sep=cmb[i, j-1])
  }
  res <- rbind(res, c(eq, eval(parse(text=eq))))
}

x <- as.numeric(res[,2])
table(sort(x[x==ceiling(x)]))
 [1] -35 -34 -34 -33 -17 -16 -16 -15 -13 -12 -12 -11  -9  -8  -8  -7  -6  -5  -5
 [20]  -5  -4  -4  -4  -3  -2  -2  -1  -1  -1  -1  -1   0   0   0   0   1   2   3
 [39]   3   3   4   4   4   4   5   5   5   6   6   7   7   8   8   9   9  10  11
 [58]  12  12  12  13  13  13  13  14  14  14  14  15  15  15  15  16  16  16  16
 [77]  16  17  17  17  17  17  18  18  19  20  20  20  21  21  21  22  23  24  24
 [96]  25  26  27  27  27  28  28  28  29  30  31  31  32  33  34  34  35  45  46
[115]  46  47  59  60  60  61 117 118 118 119 121 122 122 123 239 240 240 241

256通りあるが1回しかないパターンもあれば複数パターンで得られる日もある。考えてみれば当たり前だ。

AKIで早期に透析を行うべきか

という話を研修医としていて、自分の記憶では早期に透析を行っても予後は改善しない、というものだったはずで、研修医もいやぁ腎臓内科ローテしたときもそんな感じだったはずです、と言っていたので調べた。
ガイドラインではCQ7-1「AKI に対して血液浄化療法を早期に開始すべきか?」において

AKI に対して早期の血液浄化療法開始が予後を改善するエビデンスは乏しく,臨
床症状や病態を広く考慮して開始の時期を決定すべきである。
推奨の強さ:なし エビデンスの強さ:C

となっている。
急性腎障害(AKI)診療ガイドライン 2016

このガイドラインでは、多施設RCT である STARRT 研究が進行中、とあったので、結果が出ていた。
Timing of Initiation of Renal-Replacement Therapy in Acute Kidney Injury. N Engl J Med 2020; 383:240-251
結論としては早期群といままで通りに古典的な適応タイミングで行う群とで90日死亡率は変わらなかった。

ではあるが、急性血液浄化(いわゆる透析)を行うと集中治療加算算定日数が25日まで延びるので、とにかく透析しろ、という国からのメッセージなのだろう(適当

Wordの校閲の個別承認をショートカットキーで高速にやりたい

Wordで原稿を書いているとき、修正記録を残す場合に、削除されたところは削除線が引かれ、追記したところは色付きになっていることが多いと思う。
他人に原稿を渡すとき、削除部分まで残っていると冗長で確認しにくいことがある。しかし、すべての修正記録を一括承認すると色が消えてしまうので、削除されたところは承認して、追記したところは色付きのまま残っていてほしいことがある。
これをするには、削除の部分にカーソルをあわせて、変更を承認する、をポチポチし、カーソルが次の変更箇所に移ったらそれが削除部分なら承認し、追記部分(承認したくない箇所)なら次へ移動する…

面倒くさくない!?!?

というわけでショートカットキーがあれば、と思ったが、デフォルトではこれらにキーは割り当てられていないらしい。
ショートカットキーの割り当ては
ファイル > オプション > リボンのユーザー設定 から
承諾して次へ進む/前へ/次へ のいずれかを選択し、
ショートカットー:ユーザー設定 をクリック
コマンドの指定で
分類(C):校閲[タブ]
AcceptChangesOrAdvance/PreviousChangeOrComment/NextChangeOrComment を選択し、
キーストロークの指定の、割り当てるキーを押してください(N): で任意のショートカットキーを使用して
現在のキー(U): に割り当てられていることを確認する。

前へ、はCtrl+F1、承認して次へ、はCtrl+F2、次へ、はCtrl+F3、に割り当ててみると、片手で高速に個別承認できるようになった。

多カテゴリへの回帰

二値ならbinaryだが多カテゴリのときにどうするか、ということでnnet::multinommlogit::mlogitが使えるがnnet::multinomのほうが使いやすかった。

m <- nnet::multinom(Species ~ ., data=iris)
# weights:  18 (10 variable)
initial  value 164.791843 
iter  10 value 16.177348
iter  20 value 7.111438
iter  30 value 6.182999
iter  40 value 5.984028
iter  50 value 5.961278
iter  60 value 5.954900
iter  70 value 5.951851
iter  80 value 5.950343
iter  90 value 5.949904
iter 100 value 5.949867
final  value 5.949867 
stopped after 100 iterations
Call:
nnet::multinom(formula = Species ~ ., data = iris)

Coefficients:
           (Intercept) Sepal.Length Sepal.Width Petal.Length Petal.Width
versicolor    18.69037    -5.458424   -8.707401     14.24477   -3.097684
virginica    -23.83628    -7.923634  -15.370769     23.65978   15.135301

Residual Deviance: 11.89973 
AIC: 31.89973 
predict(m, data=iris, type="prob")
          setosa   versicolor    virginica
1   1.000000e+00 1.526406e-09 2.716417e-36
2   9.999996e-01 3.536476e-07 2.883729e-32
3   1.000000e+00 4.443506e-08 6.103424e-34
4   9.999968e-01 3.163905e-06 7.117010e-31
5   1.000000e+00 1.102983e-09 1.289946e-36
6   1.000000e+00 3.521573e-10 1.344907e-35
7   1.000000e+00 4.098064e-08 3.016154e-33
8   1.000000e+00 2.615330e-08 2.972971e-34
9   9.999871e-01 1.294210e-05 7.048364e-30
.
.
.

クロージングキャパシティ

某試験の勉強をしていると呼吸生理のところでクロージングキャパシティというものが出てくるが、なんのことだか覚えていない。
下記リンクによれば

パイロメトリーから得られる肺容量に関係する情報は,スパイログラム上に表わされるが,残気量を含む成分は直接測定することができない.しかし臨床では,直接測定することが困難な機能的残気量とクロージングキャパシティに関する知識が必要である.
(中略)
CC とは,最大吸気位から最大呼気位まで肺内の空気を呼出していく時に,末梢気道の閉塞が起こり始める肺容量である.CC は体位や麻酔などの影響を受けないが,年齢により増加する.CC が FRC よりも大きくなると,安静時の呼吸でも末梢気道の閉塞が起こっている.すなわち,高齢者や仰臥位の全身麻酔下の患者では,CC が FRC よりも大きくなっているために,通常の換気でも,1 呼吸サイクル毎に末梢気道の閉塞が起こっている可能性が高い.この状態が継続されれば,末梢気道の閉塞から無気肺をきたし低酸素に至る可能性がある.

麻酔に必要な解剖・生理

臨床的に不均等換気を検出する検査法としてはクロージングボリューム法があり,最大吸気の状態から徐々に呼気を行った場合に肺胞が最初に虚脱する時点で,さらに残気量くらいまで呼出できる肺容量をクロージングボリュームと定義している.クロージングボリュームに残気量を加えたものはクロージングキャパシティと呼ばれているが,このクロージングキャパシティと機能的残気量(FRC)の関係は臨床上きわめて重要である(図 6).例えば,肥満患者は非肥満患者に比べて特に仰臥位では低酸素状態になりやすい.これは肥満に伴う腹部内圧上昇などでFRC が低下し,FRC レベルがクロージングキャパシティレベルよりも小さくなっている状態が発生するからである.すなわち,安静呼吸時に肺胞の一部は最初から虚脱した状態で肺シャントとなっている状態である.同様に妊婦では FRC の低下が生じFRC をクロージングキャパシティが越える状態が発生しやすい.また,FRC の変化がなくても,加齢などによりクロージングキャパシティが FRC より大きくなれば肺シャントの増加により低酸素血症が発生する.

呼吸生理の基礎と臨床

臨床工学技士集中治療テキスト

読んだ。

COI:中古でワンコインになっていた。

透析が全然分かっていないので読もうと思って読んだら、透析以外にも人工呼吸器や補助循環のことも書いてあるし、集中治療で出くわす病態についてもそれなりに書いてあるので買いだと思った。
ただ、簡素に書いてあるので、CEが読むには、医療機器編は物足りないかもしれないし、逆に病態編はCEには難しいのかもしれない。
集中治療の医者に取っては、医療機器編はそれなりに良かったが、病態編はインテンシヴィストほど詳しくなく、参考文献も多くはないので、物足りないかもしれない。ただし、EBM至上主義()にはなっていないので、軽く読んで概観をおさえるにはいいとは思う。