InputParameter: Invoerparameter voor opgeslagen SQL-procedure: Klassegenerator
InputParameter
: genereert een InputParameter-object, waarmee de informatie wordt vastgelegd over de invoerparameters van de R-functie die moet worden ingesloten in een opgeslagen SQL Server-procedure. Deze worden de invoerparameters van de opgeslagen procedure. Ondersteunde R-typen van de invoerparameters zijn POSIXct, numeriek, teken, geheel getal, logisch en onbewerkt.
Gebruik
InputParameter(name, type, defaultValue = NULL, defaultQuery = NULL,
value = NULL, enableOutput = FALSE)
Argumenten
name
Een tekenreeks, de naam van het invoerparameterobject.
type
Een tekenreeks die het R-type van het invoerparameterobject vertegenwoordigt.
defaultValue
Standaardwaarde van de parameter. Niet ondersteund voor 'raw'.
defaultQuery
Een tekenreeks die de standaardquery opgeeft waarmee de gegevens worden opgehaald als er op het moment van uitvoering van de opgeslagen procedure geen andere query wordt opgegeven.
value
Een waarde die wordt gebruikt voor de parameter in de volgende uitvoering van de opgeslagen procedure.
enableOutput
Maak hiervan een invoer-/uitvoerparameter
Waarde
InputParameter-object
Voorbeelden
## 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)