代码之家  ›  专栏  ›  技术社区  ›  jeromeResearch

数据表动态子集求解方法的澄清

  •  0
  • jeromeResearch  · 技术社区  · 8 年前

    This question 我想答案是让我接近我正在寻找的解决方案。不幸的是,我没有足够高的声誉来评论这个答案。

    dta[.I] 在下面

    require(data.table)
    dta <- data.table(date = c(rep(1,5), rep(2,5)), id = rep(1:5, 2), var = c(1:10))
    dta[ , dta[dta[.I]$id != dta$id & dta[.I]$date > dta$date], by = list(id, date)]
    

    dta[.I] 本身是无效的。为什么在上面工作?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Frank    8 年前

    .I 在中支持 j x[i, j, by] ,所以。。。 x1[, x2[.I], by=g] 使用 x1

    如果你使用 .I.一 在其他地方,它是 NULL