如何根据先发生的事情制作指标变量?

时间:2016-02-29 08:18:06

标签: r

使用RI尝试根据链接数据表“afdcwvr”或“tanfimp”中的两个指示符中的哪一个创建指示符变量,对于给定的fips代码(换句话说,在哪个列中执行“1”) “首先出现给st_fips)。我将如何实施该流程?

Data

1 个答案:

答案 0 :(得分:1)

使用library(data.table)

#read data
dt <- fread('FSP_State_FYear_ProblemSet3.csv')

#find indexes of events
res <- dt[, list(i1 = which(tanfimp == 1)[1], i2 = which(afdcwvr == 1)[1]), by = st_fips]

#finding answer
res[, first := pmin(i1, i2, na.rm = TRUE)]
res[i1 == first & !is.na(i1), ans := 1]
res[is.na(ans), ans := 2]

如果第一个1位于ans而另外1个位于tanfimp,则$patterns = array( 'pages/{{name}}/{{id}}', 'profile/{{id}}', 'download_{{file}}-{{id}}' ); 为1。