看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 請把以下不需要的部份刪除 入門(寫過其他程式,只是對語法不熟悉) *[m [問題敘述]: 我想要從1:368個數字當中 根據每個數字出現的機率p=c(p1,p2,...,p368)抽取1次放回 希望1:368每個數字都能被抽中 然後重複抽10次這樣的動作 但是目前抽出來有些情況只會抽出367個數字而非368個 想請問各位大大如何解決 感謝 [程式範例]: replicate(10,saple(1:368,nrow(data),replace=TRUE,prob=p)) [環境敘述]: 請提供 sessionInfo() 的輸出結果, 裡面含有所有你使用的作業系統、R 的版本和套件版本資訊, 讓版友更容易找出錯誤 [關鍵字]: 選擇性,也許未來有用 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 119.14.49.108 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1498150111.A.1FD.html
andrew43: 不懂「希望1:368每個數字都能被抽中」是怎麼回事? 06/23 01:20
andrew43: 不是已經給定機率抽出放回,又怎麼保證都能被抽中? 06/23 01:21
inin007: 這問題敘述,中文能力要加油 06/23 01:58
jas9441314: 就是給定抽後放回 但想每個都抽到 06/23 09:16
f496328mm: 你要放回,又要全部都抽到,不可能,你不要放回才能全 06/23 10:49
f496328mm: 部抽到 06/23 10:49
cywhale: 是說每次抽個1000數字(比如)裡面包含1-368,重複10次?? 06/23 10:50
f496328mm: 例如1:2你抽兩次,抽後放回,那有可能出現兩次都抽到 1 06/23 10:52
f496328mm: or 2,數字多那就更容易重複抽到相同的 06/23 10:52
f496328mm: 如果你其中一個機率p,小於nrow(data),那抽不到是正常 06/23 10:58
f496328mm: 的 06/23 10:58
f496328mm: 調整seed有可能全部都抽到,不過這樣不太好就是了 06/23 10:59
a78998042a: sample.base.v = 1:368 06/23 11:44
a78998042a: s_len.v = length(sample.base.v) 06/23 11:44
a78998042a: sample.f = function() 06/23 11:44
a78998042a: sample( 06/23 11:44
a78998042a: c( 06/23 11:44
a78998042a: sample(sample.base.v), 06/23 11:44
a78998042a: sample(sample.base.v, 06/23 11:45
a78998042a: (nrow(data) - s_len.v), 06/23 11:45
a78998042a: replace=TRUE, 06/23 11:45
a78998042a: prob=rep(1/s_len.v, s_len.v)) 06/23 11:45
a78998042a: ) 06/23 11:46
a78998042a: ) 06/23 11:46
a78998042a: sample.result.m = replicate(10, sample.f()) 06/23 11:46
a78998042a: 既然一定要抽到,就不是純隨機的問題,那就先放一個 06/23 11:48
a78998042a: 1:368的base,接著再隨機抽湊滿nrow(data)個數,最後 06/23 11:48
a78998042a: 再打亂順序。 06/23 11:49
f496328mm: 樓上這樣的base,可是他有機率問題耶,他是有給定機率 06/23 13:09
f496328mm: 的 06/23 13:09
a78998042a: 發文者說明,抽樣條件為 抽出每組樣本 內 base中所有 06/23 15:01
a78998042a: 元素 均 至少大於1個。 06/23 15:01
a78998042a: 所以當設定base中任意元素之出現機率<1時,抽樣條件就 06/23 15:01
a78998042a: 不可能滿足。 06/23 15:01
jas9441314: 好的 感謝各位大大 我用其他方式繞過去處理看看 06/23 15:39
lin15: 原po國文要加強... 06/23 22:49