InputData : données d’entrée de procédure stockée SQL : générateur de classes
InputData
: génère un objet InputData qui capture les informations relatives au paramètre d’entrée qui est une trame de données.
La trame de données doit être remplie lors de l’exécution d’une requête donnée.
Cet objet est nécessaire pour la création de procédures stockées dans lesquelles la fonction R incorporée prend un paramètre d’entrée de trame de données.
Utilisation
InputData(name, defaultQuery = NULL, query = NULL)
Arguments
name
Une chaîne de caractères, le nom du paramètre d’entrée de données dans la fonction R fournie à StoredProcedure.
defaultQuery
Chaîne de caractères qui spécifie la requête par défaut qui récupérera les données si une requête différente n’est pas fournie au moment de l’exécution de la procédure stockée. Doit être une simple requête SELECT.
query
Chaîne de caractères spécifiant la requête qui sera utilisée pour récupérer les données dans l’exécution suivante de la procédure stockée.
Valeur
Objet InputData
Exemples
## Not run:
# See ?StoredProcedure for creating the "cleandata" table.
# train 1 takes a data frame with clean data and outputs a model
train1 <- 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)
mm <- rxSerializeModel(mm)
return(list("mm" = mm))
}
# 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"))
# create an OutputParameter object for the variable inside the return list
# note: if that variable is a data frame use OutputData object
out <- 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("train1", "spTest1", id, out,
filePath = ".")
# register the stored procedure with the database
registerStoredProcedure(sp_df_op, conStr)
# execute the stored procedure, note: non-data frame variables inside the
# return list are not returned to R. However, if the execution is not successful
# the error will be displayed
model <- executeStoredProcedure(sp_df_op, connectionString = conStr)
# get the linear model
mm <- rxUnserializeModel(model$params$op1)
## End(Not run)