InputParameter: Eingabeparameter für die gespeicherte SQL-Prozedur: Klassengenerator
InputParameter
: generiert ein InputParameter-Objekt, das die Informationen zu den Eingabeparametern der R-Funktion erfasst, die in eine gespeicherte SQL Server-Prozedur eingebettet werden soll. Diese werden zu den Eingabeparametern der gespeicherten Prozedur. Unterstützte R-Typen der Eingabeparameter sind POSIXct, numerisch, character, integer, logical und raw.
Verwendung
InputParameter(name, type, defaultValue = NULL, defaultQuery = NULL,
value = NULL, enableOutput = FALSE)
Argumente
name
Eine Zeichenfolge, der Name des Eingabeparameterobjekts.
type
Eine Zeichenfolge, die den R-Typ des Eingabeparameterobjekts darstellt.
defaultValue
Standardwert des Parameters. Wird für "raw" nicht unterstützt.
defaultQuery
Eine Zeichenfolge, die die Standardabfrage angibt, die die Daten abruft, wenn zum Zeitpunkt der Ausführung der gespeicherten Prozedur keine andere Abfrage angegeben wird.
value
Ein Wert, der für den Parameter in der nächsten Ausführung der gespeicherten Prozedur verwendet wird.
enableOutput
Diesen Parameter als Eingabe-/Ausgabeparameter festlegen
Wert
InputParameter-Objekt
Beispiele
## Not run:
# See ?StoredProcedure for creating the `cleandata` table.
# and ?executeStoredProcedure for creating the `rdata` table.
# score1 makes a batch prediction given clean data(indata),
# model object(model_param), and the new name of the variable
# that is being predicted
score1 <- function(indata, model_param, predVarName) {
indata[,"DayOfWeek"] <- factor(indata[,"DayOfWeek"], levels=c("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"))
# The connection string
conStr <- paste("Driver={ODBC Driver 13 for SQL Server};Server=.;Database=RevoTestDB;",
"Trusted_Connection=Yes;", sep = "")
# The compute context
computeContext <- RxInSqlServer(numTasks=4, connectionString=conStr)
mm <- rxReadObject(as.raw(model_param))
# Predict
result <- rxPredict(modelObject = mm,
data = indata,
outData = NULL,
predVarNames = predVarName,
extraVarsToWrite = c("ArrDelay"),
writeModelVars = TRUE,
overwrite = TRUE)
}
# connections string
conStr <- paste0("Driver={ODBC Driver 13 for SQL Server};Server=.;Database=RevoTestDB;",
"Trusted_Connection=Yes;")
# create InputData Object for an input parameter that is a data frame
id <- InputData(name = "indata", defaultQuery = "SELECT * from cleanData")
# InputParameter for the model_param input variable
model <- InputParameter("model_param", "raw",
defaultQuery =
"select top 1 value from rdata where [key] = 'linmod.v1'")
# InputParameter for the predVarName variable
name <- InputParameter("predVarName", "character", value = "ArrDelayEstimate")
sp_df_df <- StoredProcedure(score1, "sTest", id, model, name,
filePath = ".")
## End(Not run)