Transcription commandes stata en commande R
Bonjour,
je souhaite travailler dans R en utilisant l'équivalence des commandes utilisées dans Stata. Mais je n'y arrive pas. Help!!!
Voici le do file en question:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
| keep DATE_VALIDATION_SORTIE RENSEIGNEMENTCERTIFVISITE VISITEPHYSIQUE CONFORMITE CIRCUIT CODE_BUREAU_DEDOUANEMENT CODE_DECLARANT CODE_EXPORTATEUR CODE_DESTINATAIRE NONEMCLATURE NUM_ENREG MODELE REGIME CODE_PAYS_EXPORTATION CODE_PAYS_ORIGINE PAYS_FIRST_DEST__LAST_PROV
drop if RENSEIGNEMENTCERTIFVISITE=="NON RENSEIGNE"
gen fraude=1 if CONFORMITE=="NON CONFORME"
replace fraude=0 if fraude==.
gen date1 = date( DATE_VALIDATION_SORTIE , "DMY")
format date1 %td
* 1- ordonner la base selon le critère 1 puis la date
sort CODE_DESTINATAIRE date1 NUM_ENREG
*calcul du dénominateur (nb cumulatif de déclarations)
gen vm=1
by CODE_DESTINATAIRE: gen denominateur_ffdest=sum(vm)
*calcul du numérateur (nb cumulatif de fraudes)
by CODE_DESTINATAIRE: gen numerateur_ffdest=sum(fraude)
*calcul du ratio
gen ffdest0 = numerateur_ffdest/denominateur_ffdest
sort CODE_DESTINATAIRE date1
*décalage d'une déclaration car c'est la fréquence de fraude AVANT la déclaration à évaluer qui compte
by CODE_DESTINATAIRE: gen ffdest = ffdest0[_n-1]
drop ffdest0 numerateur_ffdest denominateur_ffdest
* 2- renouveler l'opération avec le critère origine
gen origine= CODE_PAYS_ORIGINE
gen declaration =NUM_ENREG
sort origine date declaration
*gen vm=1
by origine: gen denominateur_fforigine=sum(vm)
by origine: gen numerateur_fforigine=sum(fraude)
gen fforigine0 = numerateur_fforigine/denominateur_fforigine
by origine: gen fforigine = fforigine[_n-1]
drop fforigine0 numerateur_fforigine denominateur_fforigine
* 2- renouveler l'opération avec le critère hscode
gen hs= NONEMCLATURE
sort hs date declaration
*gen vm=1
by hs: gen denominateur_ffhs=sum(vm)
by hs: gen numerateur_ffhs=sum(fraude)
gen ffhs0 = numerateur_ffhs/denominateur_ffhs
by hs: gen ffhs = ffhs[_n-1]
drop ffhs0 numerateur_ffhs denominateur_ffhs
* modèle économétrique type logit
logit fraude ffdest ffhs fforigine
predict yhat
gen fmoy=(ffdest+ffhs+fforigine)/3
gen fmax=max(ffdest, ffhs, fforigine)
* définir les "1" à partir des probabilitées estimées
sum fraude
scalar seuil=r(mean)
gen fprob=1 if yhat>=seuil
replace fprob=0 if yhat<seuil
replace fprob=. if yhat==.
* tableau de contingence
tab fprob fraude
*ordonner les déclarations par ordre de score décroissant
gsort -yhat
gsort -fmoy
gsort -fmax |
Merci d'avance
Transcription commandes stata en commande R
Bonjour,
Je vous conseille de procéder pas à pas et d'indiquer l'étape qui vous bloque.
Cordialement,