<>
English is not my mother tongue, so I do not know what to make of this
"faux" (neither does my dictionary). Ekaterina`s dataset in her initial post
was not legible to me so I tried to emulate it. I cannot vouch for
correctness or whether I understood the poster`s intent entirely. Replies
should always be in reference to the original post, not to what someone made
of it...
HTH
Martin
-----Ursprüngliche Nachricht-----
Von: [email protected]
[mailto:[email protected]] Im Auftrag von Jeph Herrin
Gesendet: Montag, 2. März 2009 17:13
An: [email protected]
Betreff: Re: st: RE: AW: how to reconstruct a minimum acceptable income from
a set of binary variables?
Well, on inspection, I see that her data have multiple
tags per record, so that 1s are filled to the right after
the first (left to right) 1; I was misled by
Martin's faux dataset. Her stated logic would then
require:
gen min=mininc1*500+(mininc2-mininc1)*1000+(mininc3-mininc2)*1500
Pending clarificaiton from Ekaterina about the _real_ structure
of her data..
Jeph
Nick Cox wrote:
Good!
I didn't spell out that I feared that there are yet other variables in
what might be Ekaterina's _real_ problem, lurking behind her stated
problem, making a more general approach attractive too.
Nick
[email protected]
Jeph Herrin
Briefer yet:
gen min=mininc1*500+mininc2*1000+mininc3*1500
which also traps the missings Nick cautions about.
Nick Cox wrote:
A variation on the same idea:
gen min = 500
foreach v in 1000 1500 2000 {
replace min = `v' if mindesinc_`v' == 1
}
To be careful, check
egen row = rowtotal(mindesinc*)
assert row == 1
Nick
[email protected]
Martin Weiss
*reconstruct Ekaterina`s data
clear*
input id mindesinc_500_999 mindesinc_1000_1499 mindesinc_1500_1999
101 1 0 0 0
102 0 1 0 0
103 0 0 1 0
104 0 0 1 0
105 0 1 0 0
end
*construct the minimum desired income
g mindesinc=500 if mindesinc_500_999
replace mindesinc=1000 if mindesinc_1000_1499
replace mindesinc=1500 if mindesinc_1500_1999
l
Ekaterina Hertog
I am dealing with a dataset from a private company and so my data
often
comes in rather strange format and I now came against the following
problem:
I have a set of individuals who answered questions about desired
income.
It looks as follows:
Individ nmb | Min desired income 500 - 999 | 1000 - 1499 | 1500 -
2000
|
101 | 0
| 0 | 1 |
102 | 0
| 1 | 1 |
103 | 0
| 0 | 1 |
104 | 1
| 1 | 1 |
105 | 0
| 1 | 1 |
Is there a way to automatically recode these binary minimum desired
income variables into a numerical variable which would state the
minimum
acceptable figure for each individual?
That is some routine which would check "Min desired income 500 - 999"
and if it equals 1 then would input 500 for the individual in question
into a newly constructed variable "Minimum acceptable income" and move
on to the next person and if it equals 0 would look at the value of
"1000 - 1499" variable and if it equals 1 would input 1000 for that
person and move on to the next person and if it is 0 would look at
"1500
- 2000" variable?
*
* 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/
*
* 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/