web-dev-qa-db-ja.com

R:fBody [[i]]のエラー:レベル4にそのようなインデックスはありません

Rのデバッグモードでは、次のエラーがスローされることがあります。

     Error in fBody[[i]] : no such index at level 4

何が原因ですか?そしてそれを避ける方法は?

29
Massyanya

これはRStudioのバグです。私はRコードを書いているときに頻繁にそれを受け取ります。これが私がいつもやっていることです。

  1. RStudioを再起動しました
  2. すべてのブレークポイントをクリアします(そのためのメニューがあります)。
  3. ソースコード全体、つまりデバッグしたいファイルを切り取ります。空のファイルを保存します。
  4. ソースコードを貼り付けます。それを保存。

このバグは、ブレークポイントの位置に関係しています。何らかの理由で、RStudioは新しいブレークポイントを他の何かと混同しています。ソースコードをカットアンドペーストすることで、RStudioに古いブレークポイントを「忘れて」、強制的に更新を開始させます。 RStudioに新しいファイルを与えるようなものです。

これで、デバッグセッションを再度実行できます。

RStudio開発者、お願いこの愚かなバグを修正してください。

33
SmallChess

Macでは、私は通常以下を使用します:

  1. ファイルを保存
  2. Debug-> Clear All Breakpoints。

RStudioを再起動しなくても役立ちます

9
Artem Zaika
  1. ブレークポイントなしでファイルを保存する
  2. セッション->再起動R

通常私のために働く...

4

個々の要素がすべて1の長さであることを確認し、長さが1であることを確認することをお勧めします。私の場合、c <- (1:23) _fit[[c]]$results["Accuracy"]_がありました。 1

fit [[3]]私は次のことをしました...

正確さ

1 0.7764711

2 0.7771532

そのため、長さが1を超えるものにmax(fit[[3]]$results["Accuracy"])を使用し、次に平均関数を使用しました。

0
samanthi22