看板 R_Language 關於我們 聯絡資訊
假設資料長這樣 ID V1 V2 1 10 11 1 11 12 1 12 13 2 13 14 2 14 15 2 15 16 3 16 17 3 17 18 4 18 19 4 19 20 先bootstrap ID s <- sample(unique(data$ID), replace=T) 再抓資料 data2 <- data[data$ID %in% s] #這樣就錯了 #s裡是有重複的ID沒錯 #可是 %in% 不會抓重複的值 網路上查尋的的結果,是用grr:::matches s_idx <- as.numeric(unlist(matches(s, data$ID, list=T))) data2 <- data[s_idx] 看起來還算簡約, 只是為了一個小功能又要裝一個pkg..有點煩躁 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.109.73.105 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1495523074.A.34C.html
cywhale: 先給一欄row_id再bootstrap再取回真正ID和值,這樣不行嗎 05/23 15:25
a78998042a: s_idx = unlist(lapply(as.list(s),function(x) 05/23 19:47
a78998042a: which(data$ID%in%x))) 05/23 19:47
memphis: @cywhale:沒看懂你說的是什麼~ 我要的是如果ID2被sample 05/23 21:42
memphis: 2次..那再重購資料的時候, 整套ID2都要重複兩次 05/23 21:42
memphis: @a78998042a: 看起來好像是對的XD, 也就是loop一遍清單 05/23 21:44
memphis: 把符合某一ID的那些row蒐集起來 05/23 21:44
bmka: 記得要把bootstrap sample的id換掉啊,不然一設cluster就錯了 05/24 10:51
memphis: 恩恩, 這個例子我沒有需要下cluster by id, 要的話只好 05/24 13:07
memphis: 多一層功夫處理ID 05/24 13:09