Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
st: RE: Problems rounding a variable using round()
From 
 
Kieran McCaul <[email protected]> 
To 
 
"[email protected]" <[email protected]> 
Subject 
 
st: RE: Problems rounding a variable using round() 
Date 
 
Sun, 25 Mar 2012 12:57:06 +0800 
This is a precision problem. Try:
count if y == float(0.6)
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of L S
Sent: Sunday, 25 March 2012 12:03 PM
To: [email protected]
Subject: st: Problems rounding a variable using round()
Hi,
I am creating a variable that is the average of 5 0/1 variables.
However, instead of taking values on {0,.2,.4.6,.8,1}, it is taking
values like .40000001 and .60000002.  I tried to use the round()
command as below, but it's not working.  Any thoughts on how I can
make y take on the values {0,.2,.4.6,.8,1}?
Thank you.
clear
set obs 1000
set seed 1234
forvalues i=1/5{
	gen x`i'=(uniform()>.5)
}
gen y = (1/5)*(x1+x2+x3+x4+x5)
* browse y
count if y==.6
replace y= round(y,.1)
count if y==.6
*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/
*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/