Dear R users, >From the code below, I try to compute "y" value. (In fact, y looks like a trapezoid)
------------------------------------------------------------------ x <- seq(0,1,.01) y <- ifelse(abs(x-.5)<=0.3,0, ifelse(abs(w-.5)>=0.4,-1, ifelse((0.1<w && w<0.2),10*x-2,-10*x+8))) ------------------------------------------------------------------ So, results are... ------------------------------------------------------------------ > x [1] 0.00 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10 0.11 0.12 0.13 0.14 [16] 0.15 0.16 0.17 0.18 0.19 0.20 0.21 0.22 0.23 0.24 0.25 0.26 0.27 0.28 0.29 [31] 0.30 0.31 0.32 0.33 0.34 0.35 0.36 0.37 0.38 0.39 0.40 0.41 0.42 0.43 0.44 [46] 0.45 0.46 0.47 0.48 0.49 0.50 0.51 0.52 0.53 0.54 0.55 0.56 0.57 0.58 0.59 [61] 0.60 0.61 0.62 0.63 0.64 0.65 0.66 0.67 0.68 0.69 0.70 0.71 0.72 0.73 0.74 [76] 0.75 0.76 0.77 0.78 0.79 0.80 0.81 0.82 0.83 0.84 0.85 0.86 0.87 0.88 0.89 [91] 0.90 0.91 0.92 0.93 0.94 0.95 0.96 0.97 0.98 0.99 1.00 > y [1] -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 8 8 8 8 8 8 8 8 8 0 0 0 0 0 [26] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [51] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [76] 0 0 0 0 0 8 8 8 8 8 8 8 8 8 8 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 [101] -1 > ------------------------------------------------------------------ However, even though the results show that y=8 for x=0.11, when x=0.11, actual y value is -0.9. And, y=-0.8 for x=0.88. I cannot understand the above results. Any comments will be greatly appreciated. Kathryn Lord -- View this message in context: http://www.nabble.com/several-%22ifelse%22-problems...-tp22009321p22009321.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.