ichimomo/frasyr

do_jackknife_vpa() でのエラー

Closed this issue · 4 comments

@ichimomoさま、@mmitsuyoさま

#809 関連??

do_jackknife_vpa() を実行すると、下記のエラーが出ました。

if (abund == "N") res <- colSums(naa[min.age:max.age, ], na.rm = TRUE) でエラー:
TRUE/FALSE が必要なところが欠損値です

debug()で確認したところ、abund.extracter() (R/rvpa.r の302行目) でひっかかっているようでした。

ご多用のところ恐縮ですがご確認いただけますと幸いです。

下記、実行コード例です。

m <- frasyr::vpa(tmpdat,
        tune       = TRUE,
        sel.update = FALSE,
        tf.year    = 2019:2021, # centering年
        term.F     = "all",
        stat.tf    = "mean",
        sel.def    = "max",
        scale      = 1,
        abund      = c("N", "N", "SSB"),
        min.age    = c(0, 0, 1),
        max.age    = c(0, 0, 3),
        use.index  = c(2, 3),
        b.est      = TRUE,
        lambda     = 0.7,
        penalty    = "f",
        est.method = "ml",
        Pope       = TRUE,
        p.init     = 0.75,
        p.pope     = 0.5,
        plus.group = FALSE,
        alpha      = 1,
        fc.year    = 2020:2022 # 将来予測用.
    )

jackres <- frasyr::do_jackknife_vpa(m, method = "index", 
                                     ncol = 2,
                                     plot_year = c(2010, 2022),
                                     scale_value = NULL)

@JK-junkin さま (@ichimomo さま @KoHMB さま)

ご指摘ありがとうございます.
不具合が多く申し訳ありません.

問題,確認してみました.
do_jacknife_vpaがuse.indexを参照するときに上手く参照がいってなかったようです.
修正したものを下記においております.
お手数おかけして申し訳ないのですが
devtools::install_github("mmitsuyo/frasyr@issue814") からfrasyrをインストールしていただき,問題が解消されるか確認していただけますでしょうか.

ご面倒おかけしてすみません.
宜しくお願い致します.

@mmitsuyo さま

ご対応ありがとうございます!エラーが出なくなりました。

ご多忙の中,ご確認していただきありがとうございます.
ではfrasyr本体のほうにくっつけたいと思います.
use.index関連で不具合が多く申し訳ありません.
指摘していただき助かります.
ご迷惑おかけして申し訳ありませんが,今後とも宜しくお願い致します.

すぐに対応していただいたので、助かりました!ありがとうございました!!