Tutoriel : Préparer les données pour effectuer l’apprentissage d’un modèle prédictif dans R avec le Machine Learning SQL
S’applique à : SQL Server 2016 (13.x) et versions ultérieures Azure SQL Managed Instance
Dans la deuxième partie de cette série de quatre tutoriels, vous allez préparer les données à partir d’une base de données à l’aide de R. Plus tard dans cette série, vous allez utiliser ces données pour effectuer l’apprentissage d’un modèle prédictif et le déployer dans R avec SQL Server Machine Learning Services ou sur des clusters Big Data.
Dans la deuxième partie de cette série de quatre tutoriels, vous allez préparer les données à partir d’une base de données à l’aide de R. Plus tard dans cette série, vous allez utiliser ces données pour effectuer l’apprentissage d’un modèle prédictif et le déployer dans R avec SQL Server Machine Learning Services.
Dans la deuxième partie de cette série de quatre tutoriels, vous allez préparer les données à partir d’une base de données à l’aide de R. Plus tard dans cette série, vous allez utiliser ces données pour effectuer l’apprentissage d’un modèle prédictif et le déployer dans R avec SQL Server R Services.
Dans la deuxième partie de cette série de quatre tutoriels, vous allez préparer les données d’une base de données en R. Dans la suite de cette série, vous utiliserez ces données pour entraîner et déployer un modèle prédictif en R avec Azure SQL Managed Instance Machine Learning Services.
Dans cet article, vous allez apprendre à :
- Restaurer un exemple de base de données dans une base de données
- Charger les données de la base de données dans une trame de données R
- Préparation des données en R en identifiant certaines colonnes comme catégoriques
Dans la première partie, vous avez appris à restaurer l’exemple de base de données.
Dans la troisième partie, vous apprendrez à effectuer l’apprentissage d’un modèle Machine Learning dans R.
Dans la quatrième partie, vous apprendrez à stocker le modèle dans une base de données, puis à créer des procédures stockées à partir des scripts R que vous avez développés dans les parties 2 et 3. Les procédures stockées sont exécutées sur le serveur pour effectuer des prédictions en fonction de nouvelles données.
Prérequis
La deuxième partie de ce didacticiel part du principe que vous avez suivi la première partie et ses conditions préalables.
Charger les données dans une trame de données
Pour utiliser les données en R, vous devez charger les données à partir de la base de données dans une trame de données (rentaldata
).
Créez un fichier RScript dans RStudio et exécutez le script suivant. Remplacez ServerName par vos propres informations de connexion.
#Define the connection string to connect to the TutorialDB database
connStr <- "Driver=SQL Server;Server=ServerName;Database=TutorialDB;uid=Username;pwd=Password"
#Get the data from the table
library(RODBC)
ch <- odbcDriverConnect(connStr)
#Import the data from the table
rentaldata <- sqlFetch(ch, "dbo.rental_data")
#Take a look at the structure of the data and the top rows
head(rentaldata)
str(rentaldata)
Vous devez obtenir des résultats similaires à ce qui suit :
Year Month Day RentalCount WeekDay Holiday Snow
1 2014 1 20 445 2 1 0
2 2014 2 13 40 5 0 0
3 2013 3 10 456 1 0 0
4 2014 3 31 38 2 0 0
5 2014 4 24 23 5 0 0
6 2015 2 11 42 4 0 0
'data.frame': 453 obs. of 7 variables:
$ Year : int 2014 2014 2013 2014 2014 2015 2013 2014 2013 2015 ...
$ Month : num 1 2 3 3 4 2 4 3 4 3 ...
$ Day : num 20 13 10 31 24 11 28 8 5 29 ...
$ RentalCount: num 445 40 456 38 23 42 310 240 22 360 ...
$ WeekDay : num 2 5 1 2 5 4 1 7 6 1 ...
$ Holiday : int 1 0 0 0 0 0 0 0 0 0 ...
$ Snow : num 0 0 0 0 0 0 0 0 0 0 ...
Préparer les données
Dans cet exemple de base de données, la majeure partie de la préparation a déjà été effectuée, mais vous allez réaliser une dernière préparation ici. Utilisez le script R suivant pour identifier trois colonnes en tant que catégories, en changeant les types de données pour factor.
#Changing the three factor columns to factor types
rentaldata$Holiday <- factor(rentaldata$Holiday);
rentaldata$Snow <- factor(rentaldata$Snow);
rentaldata$WeekDay <- factor(rentaldata$WeekDay);
#Visualize the dataset after the change
str(rentaldata);
Vous devez obtenir des résultats similaires à ce qui suit :
data.frame': 453 obs. of 7 variables:
$ Year : int 2014 2014 2013 2014 2014 2015 2013 2014 2013 2015 ...
$ Month : num 1 2 3 3 4 2 4 3 4 3 ...
$ Day : num 20 13 10 31 24 11 28 8 5 29 ...
$ RentalCount: num 445 40 456 38 23 42 310 240 22 360 ...
$ WeekDay : Factor w/ 7 levels "1","2","3","4",..: 2 5 1 2 5 4 1 7 6 1 ...
$ Holiday : Factor w/ 2 levels "0","1": 2 1 1 1 1 1 1 1 1 1 ...
$ Snow : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
Les données sont désormais prêtes pour l’entraînement.
Nettoyer les ressources
Si vous ne poursuivez pas ce tutoriel, supprimez la base de données TutorialDB.
Étapes suivantes
Dans la deuxième partie de cette série de tutoriels, vous avez appris à effectuer les tâches suivantes :
- Chargement des exemples de données dans une trame de données R
- Préparation des données en R en identifiant certaines colonnes comme catégoriques
Pour créer un modèle Machine Learning qui utilise des données de la base de données TutorialDB, suivez la troisième partie de cette série de tutoriels :