[過去ログ] 高校数学の質問スレ Part441 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
739
(1): 05/28(水)02:12 ID:uxZ9btd8(1/8) AAS
自作コードにコメントをつけるのはAIに任せると作業が捗る。少々冗長ではあるが不要なコメントは削除すればいいだけ。
例:
R言語での引数の書式の備忘録
(パッケージによって関数名や引数仕様が異なるのでAIも混同したコードを返してくることもある)

# ポアソン分布-ガンマ分布階層モデルの周辺尤度

# 数値積分による周辺尤度
# integrate: ポアソン分布とガンマ分布の密度を積分し、lambdaについて0から無限大まで計算
# dpois(x, lambda): ポアソン分布の確率質量関数、観測値xに対するlambdaの尤度
# dgamma(lambda, shape, rate): ガンマ分布の密度関数、事前分布としてlambdaに適用
# 結果は負の二項分布の確率質量に等しい
integrate(function(lambda) dpois(x, lambda) * dgamma(lambda, shape, rate), 0, Inf)$value

# 負の二項分布 (mu形式)
# dnbinom: 負の二項分布の確率質量関数
# size=shape: ガンマ分布の形状パラメータを負の二項分布の試行回数に設定
# mu=shape/rate: ガンマ分布の期待値 (shape/rate) を負の二項分布の平均に設定
dnbinom(x, size=shape, mu=shape/rate)

# 負の二項分布 (prob形式)
# prob=rate/(1+rate): ガンマ分布のレートパラメータを負の二項分布の成功確率に変換
# mu = size * (1-prob)/prob の関係から、prob = rate/(1+rate) は mu=shape/rate と等価
dnbinom(x, size=shape, prob=rate/(1+rate))

# 二項分布-ベータ分布階層モデルの周辺尤度

# 数値積分による周辺尤度
# integrate: 二項分布とベータ分布の密度を積分し、pについて0から1まで計算
# dbinom(x, size=n, prob=p): 二項分布の確率質量関数、成功回数xに対するpの尤度
# dbeta(p, shape1=alpha, shape2=beta): ベータ分布の密度関数、事前分布としてpに適用
# 結果はベータ二項分布の確率質量に等しい
integrate(function(p) dbinom(x, size=n, prob=p) * dbeta(p, shape1=alpha, shape2=beta), lower=0, upper=1)$value

# ベータ二項分布 (extraDistrパッケージ)
# dbbinom: ベータ二項分布の確率質量関数
# size=n: 二項分布の試行回数
# alpha, beta: ベータ分布の形状パラメータをそのまま使用
extraDistr::dbbinom(x, size=n, alpha=alpha, beta=beta)

# ベータ二項分布 (VGAMパッケージ)
# dbetabinom: ベータ二項分布の確率質量関数、VGAM形式
# prob=alpha/(alpha+beta): ベータ分布の期待値、成功確率の平均
# rho=1/(1+alpha+beta): 試行間の相関パラメータ、ベータ分布の分散に基づく
# rho=0なら独立な二項分布、rho>0なら正の相関、rho→1で完全相関
VGAM::dbetabinom(x, size=n, prob=alpha/(alpha+beta), rho=1/(1+alpha+beta))

面倒な処理を丸投げすると動かないコードを返してきてこちらがデバッグ作業をする羽目になることも屡々。
プロトタイプを作って改造を依頼すると要望に答えたコードが返ってくる。
特に作図は要望通りにやってくれる。
ggplot2のコマンドを覚えなくてよくなったがsize is deprecatedとかggplot2のwarningsで学習の流れた止まるので
標準関数での描画を依頼している。
1-
あと 263 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.011s