I am working int Stata/SE 15.1 to replicate a user-contributed command published in Strategic Management Journal (SMJ) by Wiersema and Bowen (2007)- citation and link provided below- and I have run into an r(103) error that I could use some guidance in troubleshooting. I detail my issues below.
On page 690 of the paper, the authors provide suggested code to compute, at each observation, the value of the marginal effect given by Equation 2 presented in their paper, its standard error, and implied z-statistic value. Summary statistics for the marginal effect and z-statistic values are computed, the marginal effect and z-statistic values are plotted as in Figure 1 of thier paper, and the marginal effect at the variable means and its associated z-statistic are computed for each model variable. I am trying to replicate this procedure for my data.
Reference
Wiersema, M. F., & Bowen, H. P. (2009). The use of limited dependent variable techniques in strategy research: Issues and methods. Strategic management journal, 30(6), 679-692. https://doi.org/10.1002/smj.758
Here is an example of my data.
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input byte patent long ceo_dst 0 2 0 0 0 0 0 15 0 . 0 0 0 5 0 400 0 3 0 . 0 . 0 1 0 . 0 2 0 3 0 0 0 . 0 1 0 2 0 3 0 0 0 4 0 4 0 . 0 4 0 . 0 1 0 2 0 . 0 . 0 5 0 . 0 . 0 5 0 4 0 0 0 200 0 6 0 2 0 1 0 1 0 0 0 3 0 . 0 5 0 2 0 . 0 2 0 1 0 1 0 3 0 100 0 5 0 0 0 6 0 0 0 0 0 4 0 . 0 0 0 2 0 0 0 3 0 . 0 0 0 30 0 1 0 8 0 . 0 3 0 5 0 5 0 2 0 0 0 . 0 4 0 1 0 1 0 2 0 . 0 2 0 2 0 2 0 . 0 . 0 . 0 0 0 1 0 3 0 100 0 . 0 2 0 4 0 2 0 5 0 2 0 . 0 2 0 1 0 0 end
Code:
*====================================================================* *WIERSEMA & BOWEN SMJ Limited Dependent Variable (2007) procedures * *====================================================================* * Estimate Logit model logit patent ceo_dst * Predict probability of patent, store values in variable pprob predict pprob * Define expression for X’s marginal effect to use in predictnl command * Save marginal effect values in meX; standard error values in meX se local vb b[ cons] + b[X]*X + b[Z]*Z local phat (exp(‘vb’)/(1+exp(‘vb’))) predictnl meX = ‘phat’*(1-‘phat’)* b[X], se(meX se) * Compute z-statistic values and store in variable z stat gen z stat = meX/meX se * print summary statistics for marginal effect and z-statistic values tabstat meX z stat, stats(mean min max) * Graph marginal effect and z-statistic values (Figure 1) graph twoway (scatter meX pprob) || /// (scatter z stat pprob, yaxis(2)yline (−1.96 1.96, axis(2))) * Compute and save sample means of variables X and Z egen meanX = mean(X) egen meanZ = mean(Z) * Determine value and significance of marginal effect at data means local vb b[ cons] + b[X]*meanX + b[Z] *meanZ local phat (exp(‘vb’)/(1+exp(‘vb’))) nlcom meX means: ‘phat’*(1-‘phat’)* b[X] nlcom meZ means: ‘phat’*(1-‘phat’)* b[Z]
Code:
. do "/var/folders/q3/qcf4ctpn0192x8czkl8x7fth0000gn/T//SD14010.000000" . * Estimate Logit model . logit patent ceo_dst Iteration 0: log likelihood = -397.95179 Iteration 1: log likelihood = -397.92964 Iteration 2: log likelihood = -397.92947 Iteration 3: log likelihood = -397.92947 Logistic regression Number of obs = 913 LR chi2(1) = 0.04 Prob > chi2 = 0.8327 Log likelihood = -397.92947 Pseudo R2 = 0.0001 ------------------------------------------------------------------------------ patent | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- ceo_dst | .0000492 .0002269 0.22 0.828 -.0003955 .0004939 _cons | -1.677191 .0912855 -18.37 0.000 -1.856107 -1.498275 ------------------------------------------------------------------------------ . * Predict probability of patent, store values in variable pprob . predict pprob (option pr assumed; Pr(patent)) (1,131 missing values generated) . * Define expression for X’s marginal effect to use in predictnl command . * Save marginal effect values in meX; standard error values in meX se . local vb b[ cons] + b[X]*X + b[Z]*Z . local phat (exp(‘vb’)/(1+exp(‘vb’))) . predictnl meX = ‘phat’*(1-‘phat’)* b[X], se(meX se) may only specify one se variable r(103); end of do-file r(103);
Code:
predictnl meX = ‘phat’*(1-‘phat’)* b[X], se(meX se)
0 Response to Help debugging error message in user generated Stata code
Post a Comment