InputParameter: Eingabeparameter für 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 die Eingabeparameter der gespeicherten Prozedur. Unterstützte R-Typen der Eingabeparameter sind POSIXct, numeric, 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 bereitgestellt wird.
value
Ein Wert, der bei der nächsten Ausführung der gespeicherten Prozedur für den Parameter verwendet wird.
enableOutput
Machen Sie dies zu einem Eingabe-/Ausgabeparameter.
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 InpuData 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)