1

R に少し慣れていないので、リストに配置したオブジェクトにアクセスするのに問題があります。

次のようなリストでオブジェクトを作成します。

myObjects <- vector("list", P)
for(i in 1:10){
  myObjects[[i]] <- new.myObject()
}

次に、コードで作成したいくつかのメソッドにアクセスしたいので、次のようにアクセスする必要があります。

myObjects[1]@myMethod

ただし、それを行うと、次のエラーが表示されます: エラー: スロットのない基本クラス ("リスト") のオブジェクトからスロット "myMethod" を取得しようとしています

オブジェクトが 1 つだけの場合、コードは正常に動作しますが、それをリストに入れた後、リストから戻す方法がわかりません。Rは多くの場合、「サイズ1のリスト」として物事を扱っていることがわかりますが、ここではうまくいきません。オブジェクトを含むサイズ 1 のリストではなく、リストからオブジェクトを取得する方法はありますか?

4

1 に答える 1

1

[演算子はサブリストを提供します:長myObjects[1]さ 1 のリストです。

[[リスト項目を取得する演算子です: リストmyObjects[[1]]の最初の項目です。

ここmyObjects[[1]]@myMethodで機能するはずです。

于 2013-11-01T00:29:09.173 に答える