亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

與開始和結束位置重疊連接

與開始和結束位置重疊連接

郎朗坤 2019-06-13 14:42:23
與開始和結束位置重疊連接考慮以下幾點data.tableS.第一個區域定義了每組“x”的起始和結束位置的一組區域:library(data.table)d1 <- data.table(x = letters[1:5], start = c(1,5,19,30, 7), end = c(3,11,22,39,25))setkey(d1, x, start) #    x start end# 1: a     1   3# 2: b     5  11# 3: c    19  22# 4: d    30  39# 5: e     7  25第二個數據集具有相同的分組變量‘x’,并在每個組中定位‘pos’:d2 <- data.table(x = letters[c(1,1,2,2,3:5)], pos = c(2,3,3,12,20,52,10))setkey(d2, x, pos)#    x pos# 1: a   2# 2: a   3 # 3: b   3# 4: b  12# 5: c  20# 6: d  52# 7: e  10最后,我想提取‘d2’中的行,其中‘pos’在每個組中都屬于由‘start’和‘end’定義的范圍內。x..期望的結果是#    x pos start  end# 1: a   2     1    3# 2: a   3     1    3# 3: c  20    19   22# 4: e  10     7   25任何組的開始/結束位置。x永遠不會重疊,但在任何地區都可能存在價值差距。現在,我認為我應該使用滾動連接。據我所知,我不能在聯接中使用“end”列。我試過d1[d2, roll = TRUE, nomatch = 0, mult = "all"][start <= end]得到#    x start end# 1: a     2   3# 2: a     3   3# 3: c    20  22# 4: e    10  25這是我想要的正確的行集;但是,“pos”變成了“start”,而原始的“start”已經丟失了。是否有一種方法可以保留所有列的滾動連接,以便我可以報告“開始”,“pos”,“結束”的要求嗎?
查看完整描述

3 回答

  • 3 回答
  • 0 關注
  • 686 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號