5
私はS12クラスがtestClass
だとしましょう。内容はこの質問の目的とは無関係ですが、数値にするようにしましょう。オブジェクトの反対側を取るS4メソッドを定義する方法は?
#' An S4 class that stores a list.
#' @export
setClass("testClass",
representation(a="numeric"))
オブジェクトの反対側のように機能するメソッドを定義したいと思います。たとえば:
vec <- rnorm(10)
-vec
私はこれが最初の引数が不足しているとArith
メソッドを宣言するだろうと思いました。
#' @export
setMethod("Arith", c(e1="missing", e2="testClass"),
function(e1, e2)
{
op = .Generic[[1]]
switch(op,
`-` = return([email protected])
)
}
)
しかし、私は次のエラーを取得する方法に適用しようとすると:
tc <- new("testClass", a=2)
-tc
Error in -tc : invalid argument to unary operator
ニースのデモ。好奇心の外に、「.Generic」がどこから来たのか(つまり、その価値がどこにあるのか) –
' '.Generic'はいくつかのスクロールの後に生成します:' '.Generic ' "、e2 =" missing ")、function(e1、e2)-e1 @ a)'? – nicola