This thread continues from the below previous thread:
https://www.statalist.org/forums/for...pping-interval
I'd like to create a lower and upper bound for a variable (lambda).
I first compute lambda in Excel by the formula: l
ambda = a^(1-r)
The results are in
Table 1.
And then I create the interval of lambda for each "numbers of accepted options" in
Table 2 in Excel, too.
Table 1:
Hypothetical options |
a |
r=2.91 |
r=1.96 |
r=0.66 |
r=0.31 |
1 |
3 |
0.12 |
0.35 |
1.45 |
2.13 |
2 |
2 |
0.27 |
0.51 |
1.27 |
1.61 |
3 |
1.5 |
0.46 |
0.68 |
1.15 |
1.32 |
4 |
1.2 |
0.71 |
0.84 |
1.06 |
1.13 |
5 |
1 |
1.00 |
1.00 |
1.00 |
1.00 |
6 |
0.86 |
1.34 |
1.16 |
0.95 |
0.90 |
Table 2: For each h_safeoption we have one equivalent of r
|
h_safeoption |
|
|
|
|
3 |
2 |
1 |
0 |
h_accepted |
r = 2.91 |
r = 1.96 |
r = 0.66 |
r = 0.31 |
0 |
λ ≤ 0.12 |
λ ≤ 0.35 |
λ ≥ 1.45 |
λ ≥ 2.13 |
1 |
0.12 < λ ≤ 0.27 |
0.35 < λ ≤ 0.51 |
1.27 ≤ λ < 1.45 |
1.61 ≤ λ < 2.13 |
2 |
0.27 < λ ≤ 0.46 |
0.51 < λ ≤ 0.68 |
1.15 ≤ λ < 1.27 |
1.32 ≤ λ < 1.61 |
3 |
0.46 < λ ≤ 0.71 |
0.68 < λ ≤ 0.84 |
1.06 ≤ λ < 1.15 |
1.13 ≤ λ < 1.32 |
4 |
0.71 < λ ≤ 1 |
0.84 < λ ≤ 1 |
1 ≤ λ < 1.06 |
1 ≤ λ < 1.13 |
5 |
1 < λ ≤ 1.34 |
1 < λ ≤ 1.16 |
0.95 ≤ λ < 1 |
0.90 ≤ λ < 1 |
6 |
λ > 1.34 |
λ > 1.16 |
λ < 0.95 |
λ < 0.90 |
Then I generate these lambda1h (min) and lambda2h (max) in Stata by the following command and repeat for lambda2h
gen lambda1h=0.12 if h_safeoption==3&h_accepted==1
replace lambda1h=0.27 if h_safeoption==3&h_accepted==2
replace lambda1h=0.46 if h_safeoption==3&h_accepted==3
replace lambda1h=0.71 if h_safeoption==3&h_accepted==4
replace lambda1h=1 if h_safeoption==3&h_accepted==5
replace lambda1h=1.34 if h_safeoption==3&h_accepted==6
replace lambda1h=0.35 if h_safeoption==2&h_accepted==1
replace lambda1h=0.51 if h_safeoption==2&h_accepted==2
replace lambda1h=0.68 if h_safeoption==2&h_accepted==3
replace lambda1h=0.84 if h_safeoption==2&h_accepted==4
replace lambda1h=1 if h_safeoption==2&h_accepted==5
replace lambda1h=1.16 if h_safeoption==2&h_accepted==6
replace lambda1h=1.45 if h_safeoption==1&h_accepted==0
replace lambda1h=1.27 if h_safeoption==1&h_accepted==1
replace lambda1h=1.15 if h_safeoption==1&h_accepted==2
replace lambda1h=1.06 if h_safeoption==1&h_accepted==3
replace lambda1h=1 if h_safeoption==1&h_accepted==4
replace lambda1h=0.95 if h_safeoption==1&h_accepted==5
replace lambda1h=2.13 if h_safeoption==0&h_accepted==0
replace lambda1h=1.61 if h_safeoption==0&h_accepted==1
replace lambda1h=1.32 if h_safeoption==0&h_accepted==2
replace lambda1h=1.13 if h_safeoption==0&h_accepted==3
replace lambda1h=1 if h_safeoption==0&h_accepted==4
replace lambda1h=0.9 if h_safeoption==0&h_accepted==5
----------------------- copy starting from the next line -----------------------
Code:
* Example generated by -dataex-. To install: ssc install dataex
clear
input float(h_accepted h_safeoption)
0 3
0 3
0 3
5 1
6 4
4 4
0 1
4 1
3 1
4 0
6 0
6 0
2 2
2 0
3 0
6 0
3 4
0 3
2 0
0 4
0 4
0 3
0 4
0 1
0 4
0 1
0 4
4 0
0 0
0 4
6 0
3 0
2 0
1 0
0 3
0 0
5 4
6 3
6 4
1 3
1 3
0 3
4 0
0 0
0 3
0 1
6 0
6 2
2 0
0 3
3 4
5 0
1 2
0 4
1 3
2 1
2 3
3 0
4 1
0 3
0 0
2 0
5 0
0 4
0 4
5 1
0 4
2 0
0 4
6 0
6 4
3 1
0 4
4 0
6 0
3 4
1 3
0 0
4 0
0 1
0 4
5 2
1 1
4 2
4 0
1 0
4 3
6 0
2 0
6 0
4 1
6 0
6 0
6 0
3 0
6 0
2 0
6 1
0 4
6 4
end
------------------ copy up to and including the previous line ------------------
Are there any faster way to create lambda1h and lambda2h?
Thank you,