copulaFit
Description
L'action %copulaFit% de l'action setGemini said
Groupe logique de fonctionnalités CAS (Cloud Analytic Services) contenant des actions spécifiques (statistiques, data mining, etc.) pour traiter les données en mémoire de manière optimisée. %Copula Modeling% est l'outil ultime pour les statisticiens qui veulent comprendre comment leurs variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. « dansent » ensemble. Elle permet d'estimer les paramètres de diverses copules (ClaytonFamille de copules archimédiennes utilisée pour modéliser des dépendances asymétriques fortes dans les queues de distribution inférieures, cruciale pour l'analyse des risques de défauts simultanés., FrankCopule archimédienne symétrique modélisant une dépendance équilibrée entre les queues de distribution. Idéale pour les variables ne présentant pas de corrélation extrême (haute ou basse)., GumbelCopule archimédienne modélisant une dépendance forte dans la queue supérieure. Elle est cruciale en gestion des risques pour analyser la corrélation entre des événements extrêmes simultanés., Normale ou T) pour modéliser la structure de dépendance entre variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage., indépendamment de leurs distributions marginales. C'est un peu comme une agence de rencontre pour données : on regarde comment elles s'entendent sans se soucier de leur origine individuelle !
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| copulatype | Définit le modèle de dépendance : 'CLAYTON', 'FRANK', 'GUMBEL' (Archimédiennes), 'NORMAL' ou 'T' (Elliptiques). |
| table | La table CAS contenant vos données d'observation. |
| var | La liste des variables numériques à inclure dans la modélisation de la copule. |
| marginals | Spécifie si les marginales sont traitées comme uniformes ou estimées de manière empirique (par défaut). |
| method | Méthode d'estimation : 'MLE' (Maximum de vraisemblance) ou 'CAL' (Calibration via le tau de Kendall). |
| outpseudo | Table de sortie pour stocker les pseudo-observations (données transformées en rangs uniformes). |
| optimizer | Un sous-ensemble de paramètres pour piloter l'algorithme d'optimisation (itérations, technique, tolérance). |
| store | Permet de sauvegarder le modèle complet dans un item store pour une utilisation future avec 'copulaSimulate'. |
Préparation des données
Création de données corrélées pour test
Génère deux variables avec une dépendance non linéaire pour tester la copule.
| 1 | DATA casuser.test_copula; |
| 2 | DO i = 1 to 1000; |
| 3 | u = rand('Uniform'); |
| 4 | v = rand('Uniform'); |
| 5 | /* Introduction d'une dépendance simple */ |
| 6 | x = u; |
| 7 | y = (u + v) / 2; |
| 8 | OUTPUT; |
| 9 | END; |
| 10 | drop i u v; |
| 11 | RUN; |
Exemples d'utilisation
Estimation simple d'une copule de Clayton
On estime le paramètre theta pour une copule de Clayton avec des marginales empiriques.
| 1 | PROC CAS; |
| 2 | copula.copulaFit / |
| 3 | TABLE={name='test_copula'}, |
| 4 | var={'x', 'y'}, |
| 5 | copulatype='CLAYTON', |
| 6 | method='MLE'; |
| 7 | RUN; |
Résultat Attendu :
Modélisation complète avec optimisation et sortie pseudo-observations
Utilisation d'une copule de Student (T), calcul des pseudo-observations, et configuration avancée de l'optimiseur.
| 1 | PROC CAS; |
| 2 | copula.copulaFit / |
| 3 | TABLE={name='test_copula'}, |
| 4 | var={'x', 'y'}, |
| 5 | copulatype='T', |
| 6 | method='MLE', |
| 7 | df=4, |
| 8 | outpseudo={name='pseudo_data', replace=true}, |
| 9 | optimizer={algorithm='QUASINEWTON', maxit=100, gtol=1e-6}, |
| 10 | plot={scatter=true, tail=true}, |
| 11 | store={name='my_copula_model', replace=true}; |
| 12 | RUN; |