ruleMining

mbanalysis

Description

L'action `mbanalysis` effectue une analyse d'association, également connue sous le nom d'analyse du panier d'achat, pour trouver des relations et des règles entre les articles dans un ensemble de données transactionnelles. Elle est principalement utilisée pour découvrir des modèles d'achat, comme les produits fréquemment achetés ensemble.

ruleMining.mbanalysis / antecedentList={...}, conf=double, consequentList={...}, hierarchy={{...}, {...}, ...}, idVariable="variable-name", items=integer, lift=double, maxItems=integer, minItems=integer, nLHS_range={...}, norm=TRUE | FALSE, nRHS_range={...}, out={...}, outfreq={...}, outrule={...}, saveState={...}, separator="string", sup_lift=double, supmin=double, suppct=double, table={...}, tgtVariable="variable-name";
Paramètres
ParamètreDescription
antecedentListSpécifie les chaînes d'expressions régulières à rechercher dans l'antécédent (côté gauche) d'une règle.
confSpécifie la confiance minimale pour les règles. La valeur par défaut est 50.
consequentListSpécifie les chaînes d'expressions régulières à rechercher dans le conséquent (côté droit) d'une règle.
hierarchySpécifie une ou plusieurs tables de hiérarchie. Si omis, l'action effectue une analyse d'association simple sans hiérarchie. Jusqu'à cinq tables peuvent être spécifiées, chacune représentant un niveau de la hiérarchie.
idVariableSpécifie la variable utilisée pour regrouper la variable cible en paniers.
itemsSpécifie le nombre d'articles dans une règle. La valeur par défaut est 2 si `out` ou `outrule` est spécifié, sinon 1.
liftSpécifie la valeur minimale du lift nécessaire pour générer une règle. La valeur par défaut est 1.
maxItemsSpécifie une taille maximale de panier ; les paniers plus grands sont rejetés. La valeur par défaut est 1000.
minItemsSpécifie une taille minimale de panier ; les paniers plus petits sont rejetés. La valeur par défaut est 1.
nLHS_rangeSpécifie le nombre minimum et maximum d'articles dans le côté gauche (LHS) d'une règle.
normSi défini sur VRAI, normalise les valeurs de la variable cible et des articles dans les tables de sortie.
nRHS_rangeSpécifie le nombre minimum et maximum d'articles dans le côté droit (RHS) d'une règle.
outSpécifie la table pour contenir les ensembles d'articles fréquents afin de générer des règles. Cette table de sortie inclut également les comptes de transactions et le support.
outfreqSpécifie la table pour contenir les articles fréquents uniques avec leurs comptes de transactions et leur support.
outruleSpécifie la table pour contenir les règles. Cette table de sortie inclut des variables identifiant les côtés gauche et droit de la règle, le support et le lift.
saveStateSpécifie la table dans laquelle sauvegarder le modèle pour un scoring futur.
separatorSpécifie le caractère séparateur dans l'antécédent ou le conséquent d'une règle. La valeur par défaut est "&".
sup_liftSpécifie le lift de support minimum nécessaire pour générer une règle. La valeur par défaut est 0.
supminSpécifie le niveau de support minimum pour une règle. Cela représente la fréquence minimale autorisée d'un article. Ce paramètre supplante `suppct`.
suppctSpécifie le niveau de support minimum pour une règle en pourcentage du nombre de paniers dans la table de données d'entrée.
tableSpécifie les paramètres de la table d'entrée contenant les données de transaction.
tgtVariableSpécifie une seule variable nominale à utiliser comme variable cible. Si cette variable n'est pas présente dans la table de données, l'action se termine par une erreur.
Préparation des Données Voir la fiche de ce code dataprep
Création des Données d'Exemple

Ce bloc de code crée un jeu de données transactionnelles simple pour illustrer l'utilisation de l'action `mbanalysis`.

Copié !
1DATA casuser.transactions;
2 INPUT transaction_id item_id $;
3 CARDS;
4 1 bread
5 1 milk
6 1 cheese
7 2 bread
8 2 butter
9 3 milk
10 3 cheese
11 4 bread
12 4 milk
13 5 bread
14 5 cheese
15 ;
16RUN;

Exemples

Cet exemple effectue une analyse de panier d'achat de base avec un support minimum de 1% et une confiance de 50%. Les règles générées sont stockées dans la table 'outrule_simple'.

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 ruleMining.mbanalysis /
3 TABLE={name='transactions' caslib='casuser'},
4 idVariable='transaction_id',
5 tgtVariable='item_id',
6 suppct=1,
7 conf=50,
8 outrule={name='outrule_simple', caslib='casuser', replace=true};
9RUN;
Résultat :
Une table CAS nommée 'outrule_simple' est créée dans la caslib 'casuser', contenant les règles d'association découvertes avec leur support, confiance et lift.

Cet exemple plus avancé filtre les règles pour n'inclure que celles où 'milk' est dans l'antécédent et 'bread' est dans le conséquent. Il définit également une taille de règle de 2 articles, un support minimum de 20%, une confiance de 60% et un lift minimum de 1.2.

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 ruleMining.mbanalysis /
3 TABLE={name='transactions', caslib='casuser'},
4 idVariable='transaction_id',
5 tgtVariable='item_id',
6 items=2,
7 suppct=20,
8 conf=60,
9 lift=1.2,
10 antecedentList={'milk'},
11 consequentList={'bread'},
12 out={name='out_detailed', caslib='casuser', replace=true},
13 outrule={name='outrule_detailed', caslib='casuser', replace=true};
14RUN;
Résultat :
Deux tables CAS, 'out_detailed' et 'outrule_detailed', sont créées. 'outrule_detailed' contient les règles filtrées spécifiques qui satisfont à toutes les contraintes, notamment la présence de 'milk' à gauche et 'bread' à droite.

FAQ

À quoi sert l'action mbanalysis ?
Quels sont les paramètres requis pour l'action mbanalysis ?
Comment spécifier le support minimum pour une règle ?
Quels sont les principaux critères pour filtrer les règles générées ?
Dans quelles tables les résultats de l'action mbanalysis peuvent-ils être stockés ?
Est-il possible d'inclure une hiérarchie d'articles dans l'analyse ?