frontier

frontierCost

Description

L'action frontierCost permet d'ajuster et d'analyser des modèles de frontière de coût stochastique. Ces modèles sont utilisés pour estimer l'efficacité économique en comparant les coûts observés à une frontière de coût minimale théorique, tout en tenant compte des inefficacités aléatoires et du bruit statistique.

frontier.frontierCost <result=results> <status=rc> / bounds={"string-1" <, "string-2", ...>}, class={{classStatement-1} <, {classStatement-2}, ...>}, display={displayTables}, freq="variable-name", includeInternalNames=TRUE | FALSE, initialValues={"string-1" <, "string-2", ...>}, * model={frontiermodel}, optimizer={optimizerOpts}, output={frontieroutputStatement}, outputTables={outputTables}, restrictions={"string-1" <, "string-2", ...>}, * table={castable}, tests={{singleTest-1} <, {singleTest-2}, ...>}, weight={frontierweightvarOptions};
Paramètres
ParamètreDescription
tableSpécifie la table de données en entrée contenant les variables à analyser. Ce paramètre est obligatoire.
modelDéfinit la structure du modèle, y compris la variable dépendante (le coût) via 'depVars' et les variables explicatives via 'effects'. Ce paramètre est obligatoire.
classSpécifie les variables de classification (catégorielles) à utiliser dans le modèle. Permet de définir l'ordre de tri, la méthode de paramétrage (ex: GLM, REFERENCE) et la gestion des valeurs manquantes.
boundsImpose des contraintes de limites simples (bornes inférieures ou supérieures) sur les estimations des paramètres.
restrictionsSpécifie des restrictions linéaires à imposer aux estimations des paramètres.
optimizerFournit des options pour contrôler le processus d'optimisation non linéaire, telles que l'algorithme (ex: Newton-Raphson, Quasi-Newton), le nombre maximal d'itérations, et les tolérances de convergence.
outputDéfinit les détails de la table de sortie (via 'casOut') qui contiendra les scores et statistiques calculés, tels que les valeurs prédites ('pred'), les résidus ('resid') et l'efficacité technique ('te1', 'te2').
testsPermet de spécifier et d'exécuter des tests d'hypothèses linéaires (Wald, Multiplicateur de Lagrange, Rapport de vraisemblance) sur les paramètres du modèle.
freqSpécifie une variable numérique représentant la fréquence d'occurrence de chaque observation.
weightSpécifie la variable de pondération pour les observations, avec une option pour normaliser les poids.
displayContrôle la liste des tableaux de résultats à afficher dans la sortie.
outputTablesSpécifie les tableaux d'affichage à exporter sous forme de tables CAS.
Préparation des Données Voir la fiche de ce code dataprep
Simulation de données de coût

Création d'un jeu de données simulant une fonction de coût log-linéaire avec une composante d'inefficacité (u) et un bruit aléatoire (v).

Copié !
1DATA mycas.cost_data;
2 call streaminit(12345);
3 DO i = 1 to 500;
4 log_q = rand('Normal', 5, 1); /* Log de la production */
5 log_p1 = rand('Normal', 2, 0.5); /* Log prix intrant 1 */
6 log_p2 = rand('Normal', 3, 0.5); /* Log prix intrant 2 */
7 v = rand('Normal', 0, 0.1); /* Erreur aléatoire */
8 u = rand('Exponential'); /* Inefficacité de coût (positive) */
9 /* Modèle de coût: C = f(Q, P) + v + u */
10 log_cost = 1 + 0.7*log_q + 0.4*log_p1 + 0.6*log_p2 + v + u;
11 OUTPUT;
12 END;
13RUN;

Exemples

Ajustement d'un modèle de frontière stochastique où le coût (log_cost) dépend de la production (log_q) et des prix des intrants (log_p1, log_p2).

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 frontier.frontierCost
3 TABLE="cost_data"
4 model={
5 depVars={{name="log_cost"}},
6 effects={{vars={"log_q", "log_p1", "log_p2"}}}
7 };
8RUN;
Résultat :
Affiche les informations du modèle, l'historique de l'optimisation et les estimations des paramètres, incluant l'intercept, les coefficients des variables explicatives et les variances des composantes d'erreur.

Modèle spécifiant une distribution exponentielle pour l'inefficacité, utilisant l'algorithme de Newton-Raphson, produisant une table de sortie avec les scores d'efficacité, et effectuant un test de Wald.

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 frontier.frontierCost
3 TABLE="cost_data"
4 model={
5 depVars={{name="log_cost"}},
6 effects={{vars={"log_q", "log_p1", "log_p2"}}},
7 modelOptions={type="EXPONENTIAL"}
8 }
9 optimizer={
10 algorithm="NEWTONRAPHSONWITHRIDGING",
11 maxIt=100
12 }
13 tests={{
14 testLabel="Test Rendements Echelle",
15 eqns={"log_q = 1"},
16 testNames={"WALD"}
17 }}
18 OUTPUT={
19 casOut={name="cost_scores", replace=TRUE},
20 pred="predicted_cost",
21 te1="tech_efficiency",
22 resid="residuals"
23 };
24RUN;
Résultat :
Génère les estimations du modèle exponentiel, les résultats du test de Wald spécifié, et crée la table 'cost_scores' contenant les coûts prédits, les résidus et l'efficacité technique calculée (te1).

FAQ

Quelle est la fonction de l'action frontierCost ?
Comment spécifier la table de données source pour l'analyse ?
Comment définir les variables de classification ?
Comment imposer des contraintes de limites sur les estimations des paramètres ?
Comment spécifier le modèle de frontière de coût ?
Comment contrôler le processus d'optimisation de l'estimation ?
Comment créer une table de sortie contenant les scores et statistiques ?
Comment spécifier une variable de pondération pour les observations ?
Comment inclure les noms internes des paramètres dans les résultats ?
Comment imposer des restrictions linéaires sur les estimations des paramètres ?