ore.tableApply
関数は、入力データとしてore.frame
を指定してRスクリプトを起動します。ore.tableApply
関数は、ore.frame
を最初の引数としてユーザー定義の入力関数に渡します。ore.tableApply
関数は、ore.frame
オブジェクトまたはシリアライズRオブジェクトをore.object
オブジェクトとして返します。
ore.tableApply
関数の構文は次のとおりです。
ore.tableApply(X, FUN, ..., FUN.VALUE = NULL, FUN.NAME = NULL, FUN.OWNER = NULL)
関連項目:
関数ore.tableApply
の引数の詳細は、「スクリプトを実行する関数の引数」を参照してください。
例6-12 ore.tableApply関数の使用方法
この例では、ore.tableApply
関数を使用して、iris
データセットに基づいてNaive Bayesモデルを構築します。naiveBayes
関数はe1071
パッケージにあり、クライアントとデータベース・サーバー・マシンの両方のRエンジンにインストールする必要があります。ore.tableApply
関数の最初の引数として、ore.push(iris)
の呼出しでは一時データベース表およびその表のプロキシであるore.frame
が作成されます。2番目の引数は入力関数で、これには引数dat
があります。ore.tableApply
関数は、ore.frame
表プロキシをdat
引数として入力関数に渡します。この入力関数は、ore.tableApply
関数がore.object
オブジェクトとして返すモデルを作成します。
library(e1071) nbmod <- ore.tableApply( ore.push(iris), function(dat) { library(e1071) dat$Species <- as.factor(dat$Species) naiveBayes(Species ~ ., dat) }) class(nbmod) nbmod例6-12のリスト
R> nbmod <- ore.tableApply( + ore.push(iris), + function(dat) { + library(e1071) + dat$Species <- as.factor(dat$Species) + naiveBayes(Species ~ ., dat) + }) R> class(nbmod) [1] "ore.object" attr(,"package") [1] "OREembed" R> nbmod Naive Bayes Classifier for Discrete Predictors Call: naiveBayes.default(x = X, y = Y, laplace = laplace) A-priori probabilities: Y setosa versicolor virginica 0.3333333 0.3333333 0.3333333 Conditional probabilities: Sepal.Length Y [,1] [,2] setosa 5.006 0.3524897 versicolor 5.936 0.5161711 virginica 6.588 0.6358796 Sepal.Width Y [,1] [,2] setosa 3.428 0.3790644 versicolor 2.770 0.3137983 virginica 2.974 0.3224966 Petal.Length Y [,1] [,2] setosa 1.462 0.1736640 versicolor 4.260 0.4699110 virginica 5.552 0.5518947 Petal.Width Y [,1] [,2] setosa 0.246 0.1053856 versicolor 1.326 0.1977527 virginica 2.026 0.2746501