OutputParameter: Ausgabeparameter für gespeicherte SQL-Prozedur: Klassengenerator
OutputParameter
: Generiert ein OutputParameter-Objekt, das die Informationen zu den Ausgabeparametern der Funktion erfasst, die in eine gespeicherte SQL Server-Prozedur eingebettet werden soll. Diese werden die Ausgabeparameter der gespeicherten Prozedur. Unterstützte R-Typen der Ausgabeparameter sind POSIXct, numeric, character, integer, logical und raw.
Dieses Objekt muss erstellt werden, wenn die R-Funktion eine benannte Liste für Nicht-Datenrahmen-Member der Liste zurücksendet.
Verwendung
OutputParameter(name, type)
Argumente
name
Eine Zeichenfolge, der Name des Ausgabeparameterobjekts.
type
R-Typ des Ausgabeparameterobjekts.
Wert
OutputParameter-Objekt
Beispiele
## Not run:
# See ?StoredProcedure for creating the "cleandata" table.
# train 2 takes a data frame with clean data and outputs a model
# as well as the data on the basis of which the model was built
train2 <- function(in_df) {
in_df[,"DayOfWeek"] <- factor(in_df[,"DayOfWeek"], levels=c("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"))
# The model formula
formula <- ArrDelay ~ CRSDepTime + DayOfWeek + CRSDepHour:DayOfWeek
# Train the model
rxSetComputeContext("local")
mm <- rxLinMod(formula, data=in_df, transformFunc=NULL, transformVars=NULL)
mm <- rxSerializeModel(mm)
return(list(mm = mm, in_df = in_df))
}
# create InpuData Object for an input parameter that is a data frame
# note: if the input parameter is not a data frame use InputParameter object
id <- InputData(name = "in_df",
defaultQuery = paste0("select top 10000 ArrDelay,CRSDepTime,",
"DayOfWeek,CRSDepHour from cleanData"))
out1 <- OutputData("in_df")
# create an OutputParameter object for the variable "mm" inside the return list
out2 <- OutputParameter("mm", "raw")
# connections string
conStr <- paste0("Driver={ODBC Driver 13 for SQL Server};Server=.;Database=RevoTestDB;",
"Trusted_Connection=Yes;")
# create the stored procedure object
sp_df_op <- StoredProcedure(train2, "spTest2", id, out1, out2,
filePath = ".")
registerStoredProcedure(sp_df_op, conStr)
result <- executeStoredProcedure(sp_df_op, connectionString = conStr)
# Get back the linear model.
mm <- rxUnserializeModel(result$params$op1)
## End(Not run)