Condividi tramite


InputParameter: parametro di input per la stored procedure SQL: Generatore di classi

InputParameter: genera un oggetto InputParameter che acquisisce le informazioni sui parametri di input della funzione R da incorporare in una stored procedure di SQL Server. Tali parametri diventeranno i parametri di input della stored procedure. I tipi R supportati dei parametri di input sono POSIXct, numeric, character, integer, logical e raw.

Uso

  InputParameter(name, type, defaultValue = NULL, defaultQuery = NULL,
  value = NULL, enableOutput = FALSE)

Argomenti

name

Stringa di caratteri, il nome dell'oggetto parametro di input.

type

Stringa di caratteri che rappresenta il tipo R dell'oggetto parametro di input.

defaultValue

Valore predefinito del parametro. Non supportato per "raw".

defaultQuery

Stringa di caratteri che specifica la query predefinita che recupererà i dati se non viene specificata una query diversa al momento dell'esecuzione della stored procedure.

value

Valore che verrà utilizzato per il parametro nell'esecuzione successiva della stored procedure.

enableOutput

Impostare questo parametro come input/output

Valore

Oggetto InputParameter

Esempi


 ## 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)