問題タブ [reference-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - Refenrence クラス関数を文字列で呼び出す
do.call("...",...)
Rの標準関数のように、参照クラスのオブジェクトの関数を文字列で呼び出す簡単な方法はありますか?
r - setMethod を使用した警告メッセージ
最初に次のコードを実行すると、setMethod で警告が表示されます。
r - Rのカスタムフィールドクラスを持つクラスを参照しますか?
別の参照クラス内でカスタム参照クラスを使用したいのですが、このコードは失敗します:
クラスのフィールドを持つ 2 番目のクラスを追加しようとすると、nameClass
このクラスを開始できません。
これは単に返されます:
nameClass が S4 クラスであるソリューションを想像することはできましたが、少し読んで、S4 と参照クラスを混在させるのが少し怖くなりました。この特定の名前フィールドを単なる「文字」よりも正確に定義したい場合、何か不足していますか、それとも単純に S4 クラスを使用する必要がありますか?
また、有望なタイトルのこのスレッドを見つけましたが、これが私の問題をどのように解決できるかわかりませんでした。
r - 継承参照クラス
1) エラーの場所がわかりません:
次のコードを実行しようとすると、次のようになります。
2) 1 行だけ追加する必要があるようにコードを整理することは可能ですか?
クラス A の初期化関数の場合、残りは親クラスの Part? から取得されます。
r - 参照クラスのオブジェクトの型を判別する方法
さまざまなタイプの参照クラスのオブジェクトのリストがあります。次のクラスの型を決定する方法は? 関数を使用する必要がありますclass
か?
r - 参照クラスの内部で参照クラスのメソッドを定義する必要があるのはなぜですか?
参照クラスの定義は、R のコードのかなりの数の行を積み重ねることができます。メソッドが参照クラス内で定義される場合、いくつかのメソッドとフィールド定義により、非常に紛らわしいクラス定義が得られます。少なくとも 300 行以上では読むのが困難です。そして、私は他の問題を抱えています:
roxygen2
ドキュメントは、関数のようにすぐに使えるわけではありません。- 演算子を使用した自動提案は
$
、関数および関数のリストに対して機能しますが、RC のメソッドに対しては機能せず、フィールド名に対してのみ機能します - メソッド定義を複数のファイルに分割できる可能性があることを知りません。私のパッケージのすべてのコードは、クラス定義を含む 2 つまたは 3 つのファイルにあります。
コードで言えば、なぜこのようなことをすべきではないのでしょうか?
RC を利用し、適切に文書化されている、適切に作成された CRAN のパッケージはありますか? ドキュメンテーションといえば、きちんとした Web サイトではなく、.Rd ベースのドキュメンテーションを意味します。最近、他の人のソース コードでよく目にするのは、関数または関数のリストを含む関数です。むしろそれを使ったほうがいいですか?
r - 参照クラスでの並列計算
複雑な関数を並列に適用したいかなり大きなオブジェクトのリストがありますが、現在のメソッドはメモリを使いすぎています。参照クラスが役立つと思いましたが、mcapply
それらを変更するために使用してもうまくいかないようです。
この関数はオブジェクト自体を変更するため、元のオブジェクトを新しいオブジェクトで上書きします。オブジェクトはリストであり、私はそのほんの一部を変更しているだけなので、R のコピー オン モディファイ セマンティクスによって複数のコピーが作成されるのを回避できることを期待していました。ただし、それを実行すると、私がやっていることには当てはまらないようです。これは、私が使用してきたベース R メソッドの小さな例です。バランスを正しくゼロにリセットします。
参照クラスは変更可能であるため、参照クラスを使用すると役立つようです。使用lapply
すると、期待どおりに機能します。残高はゼロにリセットされます。
しかし、使用するmclapply
と、正しくリセットされません。Windows を使用している場合、または を持っている場合は、代わりにmc.cores=1
,が呼び出されることに注意してください。lapply
どうしたの?参照クラスを並行して操作するにはどうすればよいですか? オブジェクトの不必要なコピーを避けるためのより良い方法はありますか?
r - R のジェネリック関数と参照クラス
Martin Morgan の参照クラスに関するメモを読んでいます。スライド 7 で、彼は以前に汎用の using として設定せずに関数setMethod
を定義するために使用しています。show
setGeneric
なぜこれが許可されているのですか?を含むすべての参照クラスに対してジェネリックとして宣言されているメソッドのリストはありshow
ますか?
r - 参照クラスの機能インターフェース
クラス (または実際には S4/S3 クラス) を参照するための機能的なユーザー インターフェイスを提供することの概念的な意味を理解しようとしています。要するに、以下のようなコードを書くと、関数型のコードを書いているのと同じになるのではないかという懸念があります。
以下は単純な線形回帰クラスです。
オブジェクト指向のインターフェイスはあまりユーザー フレンドリーではないため、Martin Morgan のスライドのように、基になる参照クラスの機能的なユーザー インターフェイスを作成します。
現在、この機能的なインターフェースは、純粋に機能的なインターフェースと観察的に同等です
これが私の例が病理学的に単純なためかどうかを理解しようとしていますが、参照クラスを作成して関数インターフェイスにラップすることと、純粋に機能的なコードを作成することに意味があるかどうかはまだ疑問です。
詳細な例は非常に役立ちます。
r - 「ReferenceClass」で遅延評価を行う計算フィールド
簡素化された例では、フィールドPortfolio
内の個々の資産値を保持する参照クラスのオブジェクトがありholdings
ます。value
の個々の値を単純に合計することによって計算される追加のフィールドがありholdings
ます。
スロットにデータを入力した直後に、スロットが計算さholdings
れることは明らかです。value
質問value
:で直接呼び出されている場合にのみ、フィールドの遅延オンデマンド評価を実現するために定義を書き直す方法はPortfolio$value
?