看板 R_Language 關於我們 聯絡資訊
[軟體熟悉度]: 入門 [問題敘述]: 我目前想要做出多組數據的sp^2來估計群體的總變異數,目前遇到的問題是如果單跑 sqrt((((D[3+(i*4500-4500),5])^2)+((D[4+(i*4500-4500),5])^2))/(k-1-(k/2-1))) 這行的話出來的sp^2值是正確的 但如果用i=5000,k=4500時的for迴圈做大量運算時sp^2就會跑掉 請問各位先進大大們有解法嗎,小弟被困住好多天了,謝謝各位大大 [程式範例]: for(i in c(1:5000)){ for (k in seq(4,4500,by = 2)) { D[4+i*4500-4500,6] <- sqrt((((D[3+(i*4500-4500),5])^2)+((D[4+(i*4500-4500),5]) ^2))/(k-1-(k/2-1))) } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.136.218 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1587524830.A.AA9.html
andrew43: 沒有迴圈的情況時i和k是什麼?有迴圈時是否有任何警告 04/22 11:29
cwz1110: 沒回圈時i =1,k=4先算出第一組的sp^2,迴圈跑完後迴圈沒 04/22 11:34
cwz1110: 有任何警告 04/22 11:34
andrew43: 猜測單純資料有毛病或是你的迴圈設計不如預期 04/22 11:58
rebe212296: 你k跟i維度沒有一樣會有問題,因為你的算式同時有ik 04/22 20:21
rebe212296: 還有D[3+(i*4500-4500),5]這裡3+(i*4500-4500)不能超D 04/22 20:30
rebe212296: 的列數 04/22 20:30
cwz1110: 感謝a大&r大的回覆 04/23 12:20
cwz1110: 另回r大3+(i*4500-4500)沒超過D吧 04/23 12:20
cwz1110: 因爲我是5000*4500 04/23 12:20
cwz1110: 謝謝r大回覆! 04/23 12:20
x05863a1: j每次代數字你的D[4+i*4500-4500,6]這個元素就會被疊掉 04/24 21:53
x05863a1: 一次,所以你整個迴圈出來的結果會是每個i之下j=4500的 04/24 21:53
x05863a1: 結果,也就是前面j=4到4498的結果都沒有被傳出 04/24 21:53
cwz1110: 謝謝x大回覆!我原本是用[k+i*4500-4500,6]只不過後來檢 04/25 19:06
cwz1110: 查發現他sp^2完全都算錯,所以才用[4+i*4500-4500,6]試跑 04/25 19:06
cwz1110: 單跑可以但疊上for loop之後就錯了,苦惱很久之後才來板 04/25 19:07
cwz1110: 上問各位大神 04/25 19:07