[問題] 關於自訂函數

看板R_Language作者 (lofu)時間9年前 (2015/04/25 21:23), 編輯推噓0(0013)
留言13則, 3人參與, 最新討論串1/1
各位先進大家好小弟有個寫R上碰到的問題想請教各位大大?! --R入門階段 > cum = function(v){ for(i in 1:v){ n = which(cumsum(runif(10))>1)[1] print(n) } } >cum(3) [1] 3 [1] 2 [1] 3 產生出來的結果是我想要的但是我想把結果as.dataframe 卻無法,一直想出不解答想請各位大大幫幫忙~ 謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.119.157.48 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1429968235.A.4B7.html

04/25 21:42, , 1F
v 的內容是什麼?
04/25 21:42, 1F

04/25 21:43, , 2F
只是一個整數嗎?
04/25 21:43, 2F

04/25 21:54, , 3F
cum = data.frame(V = sapply(1:v, function(x){
04/25 21:54, 3F

04/25 21:55, , 4F
sum(cumsum(runif(10)) < 1 ) + 1}))
04/25 21:55, 4F

04/25 21:55, , 5F
因為你用print,不是把值回傳
04/25 21:55, 5F

04/25 21:58, , 6F
這是一個模擬,算inf_k (unif(0,1) k個和>1)
04/25 21:58, 6F

04/25 21:58, , 7F
根據蒙提卡羅法應該可以得到是exp(1)
04/25 21:58, 7F

04/25 22:00, , 8F
04/25 22:00, 8F

04/25 22:01, , 9F
以前碩班機率論有證過大於1的case
04/25 22:01, 9F

04/25 22:03, , 10F
應該是在隨機過程的部分,N(t)~sum of uniform dist
04/25 22:03, 10F

04/25 22:05, , 11F
那個證明是滿難的 for general case
04/25 22:05, 11F

04/25 22:05, , 12F
如果是> 1的話 我記得積分沒幾行
04/25 22:05, 12F

04/26 11:50, , 13F
感恩,問題搞定了 !
04/26 11:50, 13F
文章代碼(AID): #1LEvLhIt (R_Language)
文章代碼(AID): #1LEvLhIt (R_Language)