Stata: Dealing with missing values

Friday, September 4, 2009

Dealing with missing values is probably the first thing you do after labeling your variables. Unfortunately, this is not an easy job and many users use inappropriate means to accomplish it. Let’s start at the very beginning.

In Stata 7 and previous versions use only one default missing value “.” (without quote). If you wish to exclude missing values, it would be correct to use the:

if variable !=.

Sample code for OLS regression would resemble the following part:

regress a b if c!=. & d!=.
regress a b c if d!=.
regress a b c d


This would be 100% correct if you used an old Stata dataset; however, if your dataset in had different missing values, this code would be problematic. Stata 8 and later versions allows you do define different types of missing values, each of which begins with a “.” (without quote), such as .a, and .b. Therefore, if you have these missing values in your dataset and you use old code like that above, you would probably obtain inconsistent observation numbers.

The correct way to perform this would be to use if c <. or if  !mi(c). The revised code would similar to:

regress a b if !mi(c) & !mi(d)
regress a b c if !mi(d)
regress a b c d


What if you have 20 variables in your regression? Such if statements often result in very long lines, thereby reducing the readability of your code. There are two easy ways to overcome this: 1) creating a dummy called “touse” with 1 representing valid values for all variables; and 0 for at least one missing value.

gen touse =!mi(y, a, b, c, d)
regress y a b if touse
regress y a b c if touse
regress y a b c d if touse


2) If you don’t like this approach, you can also deal with missing values by using nestreg:

nestreg: reg y (a b) (c) (d)

Endnote: Inputing the name of orgnizations

Tuesday, August 4, 2009

Today, while I was typing a reference by Society for Technology in Education, the following picture appeared:

1.png

That means that it was messed up! Endnote had treated it as the name of a person, but that is not what I wanted. 

When you type a reference written by an organization, you have to perform one additional step. You have to type ",," (without quote) at the end of the name:

2.png

And it works!
3.png

Simple tips are really important!!

Solution: Skype uses more than 50% CPU

Tuesday, June 30, 2009

I cannot remember when it started, but everytime I used Skype, it took more than 5 minutes to log in and automatically logged me out soon. Even worse, I was not able to hear people properly while talking on Skype. This also occurred using other VOIP software, such as MSN.

Eventually, I found this post on the Skype forum: http://forum.skype.com/index.php?showtopic=367371&st=20

I am not the only person having this problem and it turns out that it is caused by ESET NOD32.  Check your ESET NOD32, and whether your personal firewall module is 1049 and your ESET NOD32 version is older than 3.0.684. For more detail, check here: http://kb.eset.com/esetkb/index?page=content&id=SOLN2277&cat=WINNT&actp=LIST

About ESET Smart Security window

Go to here http://www.eset.com/download/index.php and download the latest version, and you may also upgrade to version 4. According to an ESET announcement, “ESET Smart Security 4 and ESET NOD32 Antivirus 4 have arrived! Existing customers with a valid license for either product may upgrade to the latest version of the same product for free! Simply download the latest software and install it on your computer.”

ESL Assistant: Reduce your English writing errors

Saturday, June 27, 2009

ESL Assistant is a website developed by Microsoft with the goal of helping non-native-English speakers by identifying writing problems and suggesting improvements.

1.png

ESL Assistant: http://www.eslassistant.com/

Paste your writing into the text area and click check.
2.png

Errors are highlighted with green or red underlines. Move your mouse over these areas to display a pop-up suggestion box. Move your mouse over the suggestion box to display related keywords appearing in Bing, the new search engine developed by Microsoft. You may check these “sample sentences” and decide whether to follow the suggestions.

Keep in mind that this tool only provides suggestions, and does not necessarily identify all of your errors. In addition, this tool occasionally identifies errors, which are in fact grammatically correct.

EndNote X3 for Windows realeased!

Monday, June 22, 2009

The new version of Endnote for windows was realeased on June 17, 2009. There are many new features:
  • Format bibliographies in OpenOffice.org Writer 3
  • Group references and locate full text in new ways
  • Find More Full Text with EZProxy
  • Work on the desktop and Web


Students in North America can purchase EndNote X3 for $115.95 USD with a valid student I.D.

Stata: Export Logistic Regression (Coefficient/Odds ratio) to Word or Excel

Thursday, June 4, 2009

Stata provides two commands for logistic regression: logit and logistic. Logit reports coefficients; whereas logistic reports odds ratios. The general command for logistic regression appears like this:

logit y x
logistic y x


Logit output:
1.png

Logistic output:
2.png

If you want to export the coefficients to Word or Excel, it is the same as exporting an OLS regression. Here is the code I used:

esttab * using logistic1.csv, b(3) pr2

Exporting odds ratios requires transformation. The key is “eform” at the end of this command:

esttab * using logistic2.rtf, b(3) pr2 eform

and the results in Word look like this:
3.png

If you require t-test, you may use the following code:

esttab * using logistic3.csv, cells("b(fmt(3) star)" t(par fmt(2))) pr2 
 

Stata: Outputting correlation tables

Monday, June 1, 2009

There are two ways to export correlation tables from Stata to Word or Excel. The first approach works only on Windows. You first select your correlation table and copy it.

1.png

2.png


You then paste it into Excel and do some editing.
3.png

If you would like stars after your correlation coefficient, run a command like this:

pwcorr X1 X2 X3 X4, star(.05)

and then copy the table as mentioned above. It will look like this when you paste it into Excel

4.png

The second way is to use esttab, in which the command looks like this:

estpost correlate x1 x2 x3 x4, matrix listwise
est store c1
esttab * using test_correlation.rtf, unstack not noobs compress