1 / 47

EViews Training

EViews Training. Dummy Variables. Note: Data and workfiles for this tutorial are provided in: Data: Data.xlsx Results: Results.wf1 Practice Workfile: Data.wf1. Data and Workfile Documentation. * These data are from Wooldridge, Introductory Econometrics (4 th Edition).

Download Presentation

EViews Training

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EViews Training Dummy Variables Note: Data and workfiles for this tutorial are provided in: • Data: Data.xlsx • Results: Results.wf1 • Practice Workfile: Data.wf1

  2. Data and Workfile Documentation * These data are from Wooldridge, Introductory Econometrics (4th Edition). • Data.wf1 and Data.xlsx consist of two pages (tabs) with the following data: • Workfile Page: Dated(Data.xlsx tab Dated): daily, from Jan 1, 1950 – August 2, 2012 • Volume – S&P 500 volume (source: St. Louis Federal Reserve Bank, FRED Database) • Volume1- percent change in S&P500 Volume • Return – S&P 500 return (source: St. Louis Federal Reserve Bank, FRED Database) • Workfile Page: Cross_Section(Data.xlsx tab Cross_Section) data on 526 individuals • wage– wage per hour (in dollars) • educ– number of years of education • exper – experience, number of years • female – dummy variable, equal to 1 if female, 0 otherwise • married – dummy variable, equal to 1 if married, 0 otherwise

  3. Data Series Objects: Series and Groups • It is fairly easy to create dummy variables in EViews by using sample commandsor a number of EViews functions: • smpl • @recode • @date • @expand • This tutorial demonstrates how to create: • Dummy Variables using samples • Dummy Variables using the @recodefunction • Date Dummy Variables using the @datefunction • Categorical Dummy Variables using the @expandfunction

  4. Creating Dummy Variables Using Samples

  5. Creating Dummy Variables Using Samples: Example 1 Dummies with samples: Example 1 • Open Data.wf1workfile. Click on the Dated page. • Type in the command window:smplif return>0.2series dummy1=1smplif return<=0.2series dummy1=0 • Press Enter after each command line entry. • The easiest way to create dummy variables in EViews is by using samples (smplcommand). • Let’s illustrate a few examples using the Dated page in Workfile Data.wf1. • Suppose you would like to create a dummy variable equal to 1, if return>0.2, and 0 otherwise.

  6. Creating Dummy Variables Using Samples: Example 1 (cont’d) • The original series (return) and the new dummy variable are both shown here. Original seriesDummy Variable

  7. Creating Dummy Variables Using Samples: Example 2 • Now suppose you would like to create a dummy variable equal to 1, if return>0.3, or return<=-0.3, and 0 otherwise. Dummies with samples: Example 2 • Click on Dated workfile page. Type in the command window: smpl if return>0.3 or return<=-0.3 series dummy2=1 smpl if return>-0.3 and return<0.3 series dummy2=0 • Press Enter after each command line. Original SeriesDummy Variable

  8. Creating Dummy Variables Using @recode function

  9. Creating Dummy Variables Using @recode • Another way to create dummy variables in EViews is by using @recode function.

  10. Creating Dummy Variables Using @recode: Example 1 • Suppose you want to create a dummy equal to 1 if return<=0.2, 0 otherwise. Dummies with @recode: Example 1 • Click on the Datedworkfile page. Let’s first set the sample equal to the entire range by typing in the command window smpl @all. Now, type in the command window: series dummy4=@recode(return<=0.2,1,0) • Press Enter. Alternatively: • Click on the top menu bar of and select Quick → Generate Series. • The Generate Series by Equation dialog box opens up. Specify here your dummy expression (as shown here). • Click OK.

  11. Creating Dummy Variables Using @recode: Example 1 (cont’d) • The original series (return) and the new dummy variable are both shown here. Original seriesDummy Variable

  12. Creating Dummy Variables Using @recode: Example 2 • Create a dummy variable equal to 1 if -0.2<return<1, 0 otherwise. Dummies with @recode: Example 2 • Click on Dated workfile page. Type in the command window: series dummy5=@recode(return>-0.2 and return<1,1,0) • Press Enter. Original SeriesDummy Variable

  13. Creating Dummy Variables Using @recode: Example 3 • Create a dummy variable equal to 1 if return<=-1.2 or return>=1, 0 otherwise. Dummies with @recode: Example 3 • Click on Dated workfile page. Type in the command window: series dummy6=@recode(return<=-1.2 or return>=1,1,0) • Press Enter. Original SeriesDummy Variable

  14. Creating Dummy Variables Using @recode: Example 4 • Suppose you would like to create two new series by separating an existing series (return) as follows; • series1 collects values of return for which -0.3<return<0.3 • series2 collects values of return for which return<=-0.3 or return>=0.3 Dummies with @recode: Example 4 • Click on Dated workfile page. Type in the command window: series series1=@recode(return>-0.3 and return<0.3,return,0) series series2=@recode(return<=-0.3 or return>0.3,return,0) • Press Enterafter each command line.

  15. Creating Dummy Variables Using @recode: Example 4 (cont’d) • The original series (return) and the two new dummy variables are shown here. Original seriesSeries 1Series 2

  16. Creating Dummy Variables Using @recode: Example 5 • Let’s create a total return index from daily S&P500 returns. Dummies with @recode: Example 5 • Click on Dated workfile page. Type in the command window: series index=@recode(@trend=0,100, index(-1)*(1+return/100)) • Press Enter. Original SeriesIndex

  17. Creating Dummy Variables Using @recode: Example 6 • Lastly, suppose you want to create a series that excludes outliers from the return series in the previous example. • Specifically, suppose that the new series excludes the highest and the lowest 2.5% values of returns. Dummies with @recode: Example 6 • Click on Dated workfile page. Type in the command window: series no_outlier=@recode(return>@quantile(return,0.025) and return<@quantile(return,0.975), return, na) • Press Enter.

  18. Creating Dummy Variables Using @recode: Example 6 (cont’d) • The original series (return) and the new series are shown here. Original seriesNo Outlier

  19. A Few Notes on Simple Dummy Variables • For simple dummies, you don’t need to use smpl or @recode. • You can create them simply by defining the logical expression directly in the command window, as shown in the following examples. • However, you may have to use smpl or @recode for more complex cases.

  20. A few Notes on Simple Dummy Variables: Example 1 • Create a dummy equal to 1 if return<=0, and 0 otherwise. Simple Dummies: Example 1 • Click on Dated workfile page. Type in the command window: series d1=return<=0 • Press Enter. Original SeriesDummy Variable

  21. A few Notes on Simple Dummy Variables: Example 2 • Create a dummy equal to 1 if return<=-0.5 or return>=0.1, and 0 otherwise. Simple Dummies: Example 2 • Click on Dated workfile page. Type in the command window: series d2=return<=-0.5 or return>=0.1 • Press Enter. Original SeriesDummy Variable

  22. Date Dummy Variables

  23. Creating Date Dummies Main Functions • Dated dummies can be created by using@recode and @date or @dateval. • For more details on date functions, seetutorial on Date Functions.

  24. Creating Date Dummies:Example 1 • Suppose you want to create a dummy variable equal to 1 for all dates after 1995/03/15 and 0 otherwise. Date Dummies: Example 1 • Click on the Datedworkfile page. Now, type in the command window: series dumdate1=@recode(@date>@dateval("1995/3/15"),1,0) • Press Enter. Dummy Variable Alternatively, without @recode: • Type in the command window: series dumdate1=@date>@dateval("1995/3/15") • Press Enter.

  25. Creating Date Dummies:Example 2 • Create a dummy variable equal to 1 for all dates before April 1979 and after February 1994. Date Dummies: Example 2 • Click on the Datedworkfile page. Type in the command window: series dumdate2=@recode(@date<@dateval("1979m4") or @date>@dateval("1994m2"),1,0) • Press Enter (please type the command in one line). Alternatively, without @recode: • Type in the command window: series dumdate2=@date<@dateval("1979m4") or @date>@dateval("1994m2") • Press Enter(please type the command in one line).

  26. Creating Date Dummies: Example 2 (cont’d) • A graph of the new dummy variable is shown here. • As you can see, it assumes a value of 1 prior to April 1979 and post February 1994. Dummy Variable

  27. Creating Date Dummies:Example 4 • Dated dummies can also be created using @year, @month, @day date functions. • Create a dummy equal to 1 if the month is January or the day of the week is Friday. Date Dummies: Example 4 • Click on the Datedworkfile page. Now, type in the command window: series dumdate4=@recode(@month=1 or @weekday=5,1,0) • Press Enter. Dummy Variable Alternatively, without @recode: • Type in the command window: series dumdate4=@month=1 or @weekday=5 • Press Enter.

  28. Creating Date Dummies:Example 5 • Create a dummy equal to 1 for all years after 1994 if the month is January or the day of the week is Friday. Date Dummies: Example 5 • Click on the Datedworkfile page. Now, type in the command window: series dumdate5=@recode(@year>1994 and (@month=1 or @weekday=5),1,0) • Press Enter. Alternatively, without @recode: • Type in the command window: series dumdate5=@year>1994 and (@month=1 or @weekday=5) • Press Enter.

  29. Creating Date Dummies:Example 6 • Create a dummy variable equal to 1 for all months when there is a presidential election. Date Dummies: Example 6 • Click on the Datedworkfile page. Now, type in the command window: smpl @all series dumpres=0 smpl if @mod(@year,4)=0 and @month=11 series dumpres=1 smpl @all • Press Enter after each command line. Dummy Variable

  30. Dummy Variables in Non-Dated Workfiles

  31. Dummies in Non-dated Workfiles • You can follow the methodology used in “Dated Dummies” to create dummies in non-dated workfiles. • Simply use @obsnum(instead of @date) to create the dummy variables.

  32. Creating Dummies in Non-Dated Workfiles:Example 1 • In the Cross-Section page, create a dummy variable equal to 1 after the 5th observation, and 0 otherwise. Dummies in non-Dated Workfiles: Example 1 • Click on the Cross-Sectionworkfile page. Now, type in the command window: series dum1=@recode(@obsnum>5,1,0) • Press Enter. Dummy Variable Alternatively, without @recode: • Type in the command window: series dum1=@obsnum>5 • Press Enter.

  33. Creating Dummies in Non-Dated Workfiles:Example 2 • In the Cross-Section page, create a dummy variable equal to 1 for all the observations between the 7th and 12th observation Dummies in non-Dated Workfiles: Example 2 • Click on the Cross-Sectionworkfile page. Now, type in the command window: series dum2=@recode((@obsnum>=7 and @obsnum<=12),1,0) • Press Enter. Dummy Variable Alternatively, without @recode: • Type in the command window: series dum2=@obsnum>=7 and @ obsnum<=12 • Press Enter.

  34. Creating Dummy Variables Using @expand function

  35. Creating Categorical Dummies • Categorical dummies can be easily created by using @expand function.

  36. Creating Dummy Variables using @expand: Example 1: Categorical Dummies Dummies using @expand: Example 1 • Click on the Cross-Sectionworkfile page. Type in the command window: group g1 @expand(female) • Press Enter. • The group is shown here with the two series separating males from females. • Let’s create a group of series as follows: • One series with 1 if female and 0 if male • One series with 1 if male and 0 if female

  37. Creating Dummy Variables using @expand: Example 2: Categorical Dummies Dummies using @expand: Example 2 • Click on the Cross-Sectionworkfile page. Type in the command window: group g2 @expand(female, married) • Press Enter. • Now let’s create a new group of series as follows: • One series containing 1 if “male” and “single”. • One series containing 1 if “male” and “married”. • One series containing 1 if “female” and “single”. • One series containing 1if “female” and “married”.

  38. Creating Dummy Variables using @expand: Example 3: Categorical Dummies Dummies using @expand: Example 3 • Click on the Cross-Sectionworkfile page. Type in the command window: group g3 educ*@expand(female) • Press Enter. • The group is shown here with the two series showing the years of education for males separately from years of education for females. • Now let’s create a new group of series as follows: • One series equal to educ(years of education) if male (female=0). • One series equal to educ if female (female =1).

  39. Creating Dummy Variables using @expand: Example 4: Date Dummies • Dummies can also be created by using @expand in conjunction with other date functions (@year, @month, @day, etc.). • For example, suppose you would like to create a dummy variable for each day of the week. Dummies using @expand: Example 4 • Click on the Datedworkfile page. Type in the command window: group g1 @expand(@weekday) • Press Enter.

  40. Creating Dummy Variables using @expand: Example 5: Date Dummies • Suppose that now you would like to create a dummy variable for each year. Dummies using @expand: Example 5 • Click on the Datedworkfile page. Type in the command window: group g2 @expand(@year) • Press Enter.

  41. Dummy Variables in Regressions

  42. Dummies in Regressions: Example 1 Dummies in Regressions: Example 1 • Click on the Datedworkfile page. Type in the command window: equation eq1.ls return c volume1 @date>@dateval("1994/12/2") • Press Enter (type the command in one line). Alternatively: • Select Quick → Estimate Equation from the top menu bar. • The Equation Estimation box opens up. Specify here your equation (as shown in the figure) • Click OK. • In EViews you can use dummy variable expressions in regressions without having to first create and save the dummies. • Suppose you would like to estimate a regression of returnon volume1 and a dummy variable equal to 1 for all dates after 1994/12/2.

  43. Dummies in Regressions: Example 1 (cont’d) • The estimation output is shown here. • As you can see EViews estimates the coefficient of the dummy variable directly without us having to create and save the date dummy first. *Note: see tutorial on Basic Estimation for details on regression analysis in EViews.

  44. Dummies in Regressions: Example 2 Dummies in Regressions: Example 2 • Click on the Datedworkfile page. Type in the command window: equation eq2.ls return c volume1 (@date>@dateval("1994/12/2") and @month=1) • Press Enter. • Note that there are no spaces in the logical expression: • @month=1 is correct • @month = 1 is not correct • Now suppose you would like to estimate a regression of returnon volume1 and a dummy variable equal to 1 for all Januaries since 1994/12/2.

  45. Dummies in Regressions: Example 3 • Now let’s carry out a regression in the Cross_Sectionworkfile page. • Suppose we want to regress wage on exper, educ and four dummy variables created by @expand(female,married). Dummies in Regressions: Example 3 • Click on the Cross_Sectionworkfile page. Type in the command window: equation eq1.ls wage expereduc @expand(female, married) • Press Enter (type command in one line).

  46. Dummies in Regressions: Example 3 (cont’d) • In the previous example, notice that the constant was not included. • If you include a constant, then EViews will be unable to estimate the regression and return an error message because of perfect collinearity (the dummy variable trap). Dummies in Regressions: Example 3 • Type in the command window: equation eq1.ls wage c expereduc @expand(female, married) • Press Enter (type command in one line). • You will receive an error message (shown here). • In order to estimate the regression with a constant, you should exclude one of the dummies.

  47. Dummies in Regressions: Example 3 (cont’d) • Let’s exclude one of the dummies. You can use either one of the following commands: • @dropfirst(drops the first dummy). • @droplast(drops the last dummy). Dummies in Regressions: Example 3 • Type in the command window: equation eq2.ls wage c expereduc @expand(female, married,@dropfirst) • Press Enter (type command in one line).

More Related