Я пытаюсь узнать больше о циклах R и хочу преобразовать следующий цикл Stata в R:
generate newvar=0 forvalues i=1/25 { replace newvar=1 if PR`i'=="8512" | PR`i'=="8521" }
Чтение других постов мне было не так понятно, поэтому этот новый пост.
Вот немного надуманный пример. Stata:
sysuse auto generate newvar = 0 generate rep79 = rep78 forvalues i = 78/79 { replace newvar = 1 if rep`i'==3 | rep`i'==4 } quietly sum newvar di r(mean) .64864865
R
d <- foreign::read.dta("http://www.stata-press.com/data/r9/auto.dta") d$newvar <- 0 d$rep79 <- d$rep78 for (i in 78:79) { d$newvar <- replace(d$newvar, d[[paste0("rep", i)]] %in% c(3, 4), 1) } mean(d$newvar) # [1] 0.6486486