私は自分自身の関数を作り、Rでdata.cubeをサブセット化し、構築しようとしているいくつかの定義済みのプロットに対して自動的に結果をフォーマットします。subsettingカスタム関数内でdata.cube
これは私の機能です。
require(data.table)
require(data.cube)
secciona <- function(cubo = NULL,
fecha_valor = list(),
loc_valor = list(),
prod_valor = list(),
drop = FALSE){
cubo[fecha_valor, loc_valor, prod_valor, drop = drop]
## The line above will really be an asignment of type y <- format(cubo[...drop])
## Rest of code which will end up plotting the subset of the function
}
事は、私はエラーを取得し続けている:Error in eval(expr, envir, enclos) : object 'fecha_valor' not found
私にとって最も奇妙である何
は、鉱山のサブセット関数内で定義されたときに、コンソール上ですべてがうまく動作しますが、ではないということです。コンソールで
:
> dc[list(as.Date("2013/01/01"))]
> dc[list(as.Date("2013/01/01")),]
> dc[list(as.Date("2013/01/01")),,]
> dc[list(as.Date("2013/01/01")),list(),list()]
すべてが結果として与える:
<data.cube>
fact:
5627 rows x 2 dimensions x 1 measures (0.32 MB)
dimensions:
localizacion : 4 entities x 3 levels (0.01 MB)
producto : 153994 entities x 3 levels (21.29 MB)
total size: 21.61 MB
しかし、私はいつもの上述のエラーを取得
secciona(dc)
secciona(dc, fecha_valor = list(as.Date("2013/01/01")))
secciona(dc, fecha_valor = list())
を試してみたときに。
これは何が起こっているのですか?プロットのためにサブセットを編集する私のアプローチのために他の方法で進めるべきですか?