fism
Description
L'action fism (Frequent Item Set Mining) issue du set d'actions Association Rule Mining est le couteau suisse pour dénicher des ensembles d'articles fréquents dans vos données transactionnellesDonnées enregistrant chaque événement métier au moment où il se produit (vente, stock, clic). Elles incluent horodatage, acteurs, quantités et montants pour alimenter les analyses de séries chronologiques.. Contrairement à une analyse de règles complète, fism se concentre sur l'algorithme FP-growth (Frequent Pattern Growth) pour identifier les combinaisons qui apparaissent souvent ensemble, sans forcément calculer la confiance ou le lift. C'est un excellent point de départ pour l'analyse du panier de la ménagère ou pour comprendre quelles options sont souvent choisies simultanément par vos clients. C'est un peu comme chercher les meilleurs amis dans une cour de récréation : on veut juste savoir qui traîne toujours avec qui !
Paramètres Clés
Préparation des données
Création de données de vente simulées
Ce code génère une petite table de transactions représentant des achats en magasin pour tester l'algorithme FP-growth.
| 1 | DATA casuser.ventes; INPUT id article $; DATALINES; 1 Lait 1 Pain 1 Beurre 2 Lait 2 Pain 3 Bière 3 Pain 4 Beurre 4 Pain 5 Lait 5 Beurre 5 Pain ; RUN; |
Exemples d'utilisation
Détection basique des paires fréquentes
On recherche les ensembles de 2 articles apparaissant dans au moins 2 transactions (support minimum de 2).
| 1 | PROC CAS; ruleMining.fism / TABLE={name="ventes"}, idVariable="id", tgtVariable="article", supmin=2, out={name="itemsets", replace=true}; RUN; QUIT; |
Résultat Attendu :
Analyse avancée avec plage de tailles et fréquences unitaires
Cet exemple utilise 'nFis_Range' pour trouver des ensembles de 1 à 3 articles, définit un support de 20%, et génère une table de fréquences pour les articles seuls.
| 1 | PROC CAS; ruleMining.fism / TABLE={name="ventes"}, idVariable="id", tgtVariable="article", suppct=20, nFis_Range={lower=1, upper=3}, out={name="itemsets_complets", replace=true}, outFreq={name="frequences_articles", replace=true}; RUN; QUIT; |