メイン sample-size3.html Last modified: Sep 01, 2009
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;CHARSET=EUC-JP">
<link rel="shortcut icon" href="../favicon.ico">
<title>JavaScript</title>
<script src="pxg.js">document.write("pxg.js ファイルが見つかりません??<br>")</script>
<script language="JavaScript">
<!--
function pxg2(x)
{
return (x > 0.5) ? -pxg(1-x) : pxg(x)
}
function sample_size1(alpha, beta, d)
{
var za = pxg2(alpha)
var zb = pxg2(1-beta)
return 2*Math.pow(za+zb, 2)/Math.pow(Math.log(d), 2)
}
function phi(al, du)
{
return du/Math.pow(al, 3)/(du/al-1+Math.exp(-du/al))
}
function sample_size2(alpha, beta, d, duration, altim)
{
var za = pxg2(alpha)
var zb = pxg2(1-beta)
return Math.pow(za+zb, 2)*(phi(altim, duration)+phi(altim*d, duration))/Math.pow(1/altim/d-1/altim, 2)
}
function phi3(al, du, mo)
{
return 1/al/al/(1-(Math.exp(-(mo-du)/al)-Math.exp(-mo/al))*al/du)
}
function sample_size3(alpha, beta, d, duration, altim, more)
{
var za = pxg2(alpha)
var zb = pxg2(1-beta)
more += duration
return Math.pow(za+zb, 2)*(phi3(altim, duration, more)+phi3(altim*d, duration, more))/Math.pow(1/altim/d-1/altim, 2)
}
function calc2(form)
{
// ***** 生存期間の差の検定に必要な標本サイズ *****
var alpha, beta, d, duration, altim
if (isNaN(alpha = parseFloat(form.alpha.value)) || alpha <= 0 || alpha >= 1 ||
isNaN(beta = parseFloat(form.beta.value)) || beta <= 0 || beta >= 1 ||
isNaN(d = parseFloat(form.d.value)) || d == 0 ||
isNaN(duration = parseFloat(form.duration.value)) || duration < 0 ||
isNaN(altim = parseFloat(form.altim.value)) || altim < 0 ||
isNaN(more = parseFloat(form.more.value)) || more < 0) {
form.message.value = "入力値が変です"
return
}
if (duration == 0 && more == 0) {
form.n1.value = Math.ceil(sample_size1(alpha, beta, d))
form.n2.value = Math.ceil(sample_size1(alpha/2, beta, d))
form.message.value = "一括登録の場合について計算しました"
}
else if (duration != 0 && more == 0) {
if (altim == 0) {
form.message.value = "対照群の生存期間を入力のこと"
return
}
form.n1.value = Math.ceil(sample_size2(alpha, beta, d, duration, altim))
form.n2.value = Math.ceil(sample_size2(alpha/2, beta, d, duration, altim))
form.message.value = "継続登録の場合について計算しました"
}
else if (duration != 0 && more != 0) {
if (altim == 0) {
form.message.value = "対照群の生存期間を入力のこと"
return
}
form.n1.value = Math.ceil(sample_size3(alpha, beta, d, duration, altim, more))
form.n2.value = Math.ceil(sample_size3(alpha/2, beta, d, duration, altim, more))
form.message.value = "登録終了後に観察期間を設ける場合について計算しました"
}
else {
form.message.value = "入力値が変です"
}
}
//-->
</script>
</head>
<body bgcolor="#ffffff">
<font size="+2"><b>生存期間の差の検定に必要な標本サイズの決定</b></font><br> <a href="src/sample-size3.html"><img src="png/src.png" width=35 height=11 alt="src" align=top></a> Last modified: Jun 01, 2006<hr noshade><p>
<font color="#ff0000" size="+2">以下のプログラムのサポートは終了しました。自己責任でお使い下さい。</font>
<script language="JavaScript">
<!--
//-->JavaScript がサポートされていないブラウザですか?
</script>
<hr noshade>
<form name="PowerAnalysys">
<table border=1>
<tr>
<td nowrap align=right valign=top bgcolor="#cceecc">
<table border=0>
<tr><th nowrap align=right>登録継続期間</th><td><input name="duration" value=5 size=10></td></tr>
<tr><th nowrap align=right>登録終了後観察期間</th><td><input name="more" value=1 size=10></td></tr>
<tr><th nowrap align=right>対照群の平均生存期間</th><td><input name="altim" value=3 size=10></td></tr>
<tr><th nowrap align=right>生存期間の延長倍数</th><td><input name="d" value=1.5 size=10></td></tr>
<tr><th nowrap align=right>有意水準</th><td><input name="alpha" value=0.05 size=10></td></tr>
<tr><th nowrap align=right>検出力</th><td><input name="beta" value=0.9 size=10></td></tr>
<tr><td align=right><input type="button" name="clear" value="初期化" onClick="this.form.duration.value=this.form.more.value=this.form.altim.value=this.form.d.value=this.form.alpha.value=this.form.beta.value=this.form.n1.value=this.form.n2.value=this.form.message.value=''"></td><td><input type="button" name="calcurate" value="計算開始" onClick="calc2(this.form)"></td></tr>
<tr><th nowrap align=right>片側検定標本サイズ</th><td><input name="n1" value="" size=10></td></tr>
<tr><th nowrap align=right>両側検定標本サイズ</th><td><input name="n2" value="" size=10></td></tr>
<tr><td align=right colspan=2>各群あたりの標本サイズです</td></tr>
<tr><th align=left colspan=2>メッセージ</th></tr>
<tr><td align=left colspan=2><input name="message" value="" size=40></td></tr>
</table>
</td>
</tr>
</table>
</form>
<p><hr noshade>
<img src="../gra/button3.png" width=9 height=9 alt="・"> <a href="exa/sample-size3.html">使用法</a><br>
<img src="../gra/button3.png" width=9 height=9 alt="・"> 手法の解説は,浜島信之著「<b>多変量解析による臨床研究</b>」,名古屋大学出版会,p.30〜32 を参照のこと<br>
<img src="../gra/button3.png" width=9 height=9 alt="・"> <A HREF="javascript:history.go(-1)">直前のページへ戻る</A> <img src="../gra/button3.png" width=9 height=9 alt="・"> <a href="../mail.html">E-mail to Shigenobu AOKI</a>
<p><center><IMG SRC="../gra/ume5.png" width=121 height=37 ALT="Made with Macintosh"></center>
</body>
</html>
サブ pxg.js Last modified: Mar 25, 2004
直前のページへ戻る E-mail to Shigenobu AOKI