Использование переменных разных лет для создания модели
Есть ли способ сделать следующий код Stata в R?
Я хочу создать ступенчатую модель и хочу использовать значения определенных переменных для 1994 года для людей, которым в 1998 году исполнилось 40 лет; и хотят использовать значения тех же переменных для 1996 года для людей, которым в 2000 году исполнилось 40 лет.
for any out temp emp edu married inc age \ var cesd1998 bitemp96 employ94 edu93 married94 inc94 age94 : gen XM2=Y if H0000200==1998
for any out temp emp edu married inc age \ var cesd2000 bitemp98 employ96 edu95 married96 inc96 age96 : replace XM2=Y if H0000200==2000
1 ответ
Это не ответ, но он не легко вписывается в комментарий. Я даже не пытаюсь сделать код R Мне кажется, что беглые R-кодеры, а не я, могут разумно ожидать, как абсолютный минимум, некоторой ясности относительно того, как вы храните данные в R.
Синтаксис Stata здесь далеко не актуален, но на момент Stata 7 устарел. for
в том смысле, что здесь это даже не задокументировано.
Это не квалифицируется как минимальный, полный, проверяемый пример: https://stackru.com/help/mcve
for any out temp emp edu married inc age \ var cesd1998 bitemp96 employ94 edu93 married94 inc94 age94 : gen XM2=Y if H0000200==1998
for any out temp emp edu married inc age \ var cesd2000 bitemp98 employ96 edu95 married96 inc96 age96 : replace XM2=Y if H0000200==2000
Один перевод в текущую стату
local x1list "out temp emp edu married inc age"
local x2list "out temp emp edu married inc age"
local y1list "cesd1998 bitemp96 employ94 edu93 married94 inc94 age94"
local y2list "cesd2000 bitemp98 employ96 edu95 married96 inc96 age96"
local nvars : word count `x1list'
forval j = 1/`nvars' {
local x : word `j' of `x1list'
local y : word `j' of `y1list'
replace `x'M2 = `y' if H0000200==1998
local x : word `j' of `x2list'
local y : word `j' of `y2list'
replace `x'M2 = `y' if H0000200==2000
}
Совсем не центрально, но мимоходом обратите внимание, что одна из причин, по которой код настолько неуклюж, состоит в том, что ваши соглашения по присвоению имен переменным не согласованы.