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
table Spécifie la table de données en entrée contenant les variables à analyser. Ce paramètre est obligatoire.
model Dé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.
class Spé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.
bounds Impose des contraintes de limites simples (bornes inférieures ou supérieures) sur les estimations des paramètres.
restrictions Spécifie des restrictions linéaires à imposer aux estimations des paramètres.
optimizer Fournit 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.
output Dé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').
tests Permet 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.
freq Spécifie une variable numérique représentant la fréquence d'occurrence de chaque observation.
weight Spécifie la variable de pondération pour les observations, avec une option pour normaliser les poids.
display Contrôle la liste des tableaux de résultats à afficher dans la sortie.
outputTables Spé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 ?