Publié le :
Statistique CREATION_INTERNE

Validation de la macro PAIRBINCI

En attente de validation
Le script commence par plusieurs appels à la macro `%pairbinci` pour valider ses calculs d'intervalles de confiance pour la différence de risque (RD) et le risque relatif (RR). Ces appels utilisent des paramètres spécifiques (`level`, `bcf`, `skew`, `contrast`, `dps`) pour tester différentes méthodes (Tango, SCAS) et répliquer des résultats de publications scientifiques (Fagerland et al., 2014, Laud 2025). Des cas limites pour le risque relatif (RR) sont également testés lorsque certaines probabilités sont nulles.
Ensuite, un pas `DATA` crée un jeu de données nommé `Students` à partir de données internes (`datalines`). Ce jeu de données représente des observations d'étudiants ayant réussi ou échoué à un examen avant et après une intervention.
Enfin, `PROC FREQ` est utilisée sur le jeu de données `Students` pour générer des tableaux de fréquences croisées entre `PassPre` et `PassPost`, incluant l'option `AGREE` pour des statistiques d'accord. L'option `WEIGHT Count` est utilisée pour refléter les fréquences des observations.
Une section commentée contient du code de développement pour tester la transformation tangente.
Analyse des données

Type : CREATION_INTERNE


Le jeu de données `Students` est créé directement dans le script via un pas `DATA` et des `datalines`. Les appels à la macro `%pairbinci` utilisent des valeurs numériques codées en dur, ne nécessitant pas de source de données externe.

1 Bloc de code
MACRO CALL
Explication :
Appel de la macro `PAIRBINCI` pour calculer l'intervalle de confiance pour la différence de risque (RD) en utilisant la méthode Tango, basée sur les données du Tableau II de Fagerland et al, 2014.
Copié !
1%pairbinci(1,1,7,12,level=0.95, bcf=FALSE, skew=FALSE, contrast = RD, dps = 3);
2 
2 Bloc de code
MACRO CALL
Explication :
Appel de la macro `PAIRBINCI` pour calculer l'intervalle de confiance pour le risque relatif (RR) en utilisant la méthode Tango, basée sur les données du Tableau II de Fagerland et al, 2014.
Copié !
1%pairbinci(1,1,7,12,level=0.95, bcf=FALSE, skew=FALSE, contrast = RR, dps = 3);
2 
3 Bloc de code
MACRO CALL
Explication :
Appel de la macro `PAIRBINCI` pour calculer l'intervalle de confiance pour la différence de risque (RD) en utilisant la méthode SCAS (Laud 2025), basée sur les données du Tableau II de Fagerland et al, 2014.
Copié !
1%pairbinci(1,1,7,12,level=0.95, bcf=TRUE, skew=TRUE, contrast = RD, dps = 3);
2 
4 Bloc de code
MACRO CALL
Explication :
Appel de la macro `PAIRBINCI` pour calculer l'intervalle de confiance pour le risque relatif (RR) en utilisant la méthode SCAS (Laud 2025), basée sur les données du Tableau II de Fagerland et al, 2014.
Copié !
1%pairbinci(1,1,7,12,level=0.95, bcf=TRUE, skew=TRUE, contrast = RR, dps = 3);
2 
5 Bloc de code
MACRO CALL
Explication :
Tests des cas limites pour le risque relatif (RR) où la probabilité de l'événement dans le groupe 2 est nulle (p2 = 0), ce qui peut entraîner un RR infini. Les deux méthodes (Tango et SCAS) sont testées.
Copié !
1*** Check handling of boundary cases for RR;
2*** p2 = 0 -> RR = Inf;
3%pairbinci(0,7,0,12,level=0.95, bcf=FALSE, skew=FALSE, contrast = RR);
4%pairbinci(0,7,0,12,level=0.95, bcf=TRUE, skew=TRUE, contrast = RR);
6 Bloc de code
MACRO CALL
Explication :
Tests des cas limites pour le risque relatif (RR) où la probabilité de l'événement dans le groupe 1 est nulle (p1 = 0), ce qui devrait entraîner un RR de 0. Les deux méthodes (Tango et SCAS) sont testées.
Copié !
1*** p1 = 0 -> RR = 0;
2%pairbinci(0,0,7,12,level=0.95, bcf=FALSE, skew=FALSE, contrast = RR);
3%pairbinci(0,0,7,12,level=0.95, bcf=TRUE, skew=TRUE, contrast = RR);
4 
7 Bloc de code
MACRO CALL
Explication :
Tests des cas limites pour le risque relatif (RR) où les probabilités des événements dans les deux groupes sont nulles (p1 = p2 = 0). Les deux méthodes (Tango et SCAS) sont testées.
Copié !
1*** p1 = p2 = 0;
2%pairbinci(0,0,0,12,level=0.95, bcf=FALSE, skew=FALSE, contrast = RR);
3%pairbinci(0,0,0,12,level=0.95, bcf=TRUE, skew=TRUE, contrast = RR);
4 
8 Bloc de code
DATA STEP Data
Explication :
Création du jeu de données `Students` contenant des données appariées simulées sur le succès (Pass) ou l'échec d'étudiants avant (`PassPre`) et après (`PassPost`) une intervention, avec une variable `Count` pour les fréquences.
Copié !
1DATA Students;
2 INPUT PassPre PassPost Count;
3 DATALINES;
4 0 0 12
5 0 1 7
6 1 0 1
7 1 1 1
8 ;
9RUN;
9 Bloc de code
PROC FREQ
Explication :
Exécution de la procédure `FREQ` pour générer un tableau de contingence croisé de `PassPre` par `PassPost` à partir du jeu de données `Students`. Les options `NOPERCENT`, `NOROW`, `NOCOL` suppriment l'affichage des pourcentages. L'option `AGREE` demande des statistiques d'accord pour les données appariées. La variable `Count` est utilisée comme variable de pondération.
Copié !
1PROC FREQ DATA=Students;
2 tables PassPre*PassPost / nopercent norow nocol agree;
3 weight Count;
4* ods select CrossTabFreqs McNemarsTest;
5RUN;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Program Name : V_PAIRBINCI.SAS Type : macro validation Description : Validation of PAIRBINCI macro Including replication of published examples Author : Pete Laud Date Created : 2025-05-14 Program Status : CREATED