[問題] DATA FRAME 迴圈資料處裡

看板R_Language作者 (持久戰!!)時間10年前 (2015/09/22 11:47), 10年前編輯推噓3(301)
留言4則, 2人參與, 最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手(沒寫過程式,R 是我的第一次) [問題敘述]: 請簡略描述你所要做的事情,或是這個程式的目的 要處理data fram裡面的資料 例子如下 no value no value 1 18 1 18 2 0 2 9 (18+0)/2 3 0 ----> 3 4.5 (9+0)/2 4 0 4 12.25 (4.5+20)/2 5 20 5 20 遇到0值時 則拿前一筆與後一筆平均 填入,依序往下處理 請問這樣的for迴圈該如何表示? [環境敘述]: R version 3.1.3 (2015-03-09) Platform: x86_64-redhat-linux-gnu (64-bit) Running under: CentOS release 6.5 (Final) [關鍵字]:data frame, for迴圈 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.76.246.58 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1442893648.A.440.html ※ 編輯: aee36900 (211.76.246.58), 09/22/2015 11:48:00

09/22 12:09, , 1F
09/22 12:09, 1F

09/22 12:10, , 2F
09/22 12:10, 2F
感謝 c大提醒 最後參考文章簡單寫個迴圈解決我的需求了 if (x[1]==0) x[1] <- (x[2])/2 if (x[length(x)]==0) x[length(x)] <- (x[length(x)-1])/2 for (i in 2:(length(x)-1)) if(x[i]==0) x[i] <- (x[i-1]+x[i+1])/2 (看起來有點遜的感覺@@) ※ 編輯: aee36900 (211.76.246.58), 09/22/2015 16:19:34

09/22 16:57, , 3F
頂多比較慢,哪裡遜?能解決問題最重要。
09/22 16:57, 3F

09/22 17:02, , 4F
樓上說的沒錯XD
09/22 17:02, 4F
文章代碼(AID): #1M0CzGH0 (R_Language)
文章代碼(AID): #1M0CzGH0 (R_Language)