Re: [問題] 多個變數的迴圈如何處理?

看板R_Language作者 (為什麼會流淚)時間9年前 (2016/12/24 03:29), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/6 (看更多)
※ 引述《lovedmagic (EricZou)》之銘言: : [問題類型]: : 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) : [軟體熟悉度]: : 新手(沒寫過程式,R 是我的第一次) : [問題敘述]: : 目前我遇到的困難是我有A1~A270個變數,我每個變數都有大概五個數值, : 每個數值左側代表一個名稱,例如我A1這個變數裡面有 34 18 16 9 4五個值 : 然後每個數值對應到左側的名稱有A B C D E ,我想做的就是取出A1變數中 : 最大的那個值,然後再取出左側的ID,主要是要求出左側的ID,我要如何 : 讓迴圈把每個變數都跑過一次呢??? : 以下有錯誤範例 : [程式範例]: : fxck = data.frame() : for (i in 1:270){ : number[data$Ai==max(data$Ai)] : fxck <- rbind(number[Ai==max(Ai)],Ai) : print(fxck) : } : [關鍵字]: : 多個變數、迴圈 max.id=function(x2,name){ value = name[ max(x2) == x2 ] return(value) } x=matrix(rnorm(20),ncol=4) name=c("A","B","C","D","E") rownames(x)=name x tem = apply(x,2,function(x) max.id(x,name)) tem 應該還有更好的方法 我先提供一個 主要就是利用apply進行col運算 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.42.97.227 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1482521357.A.E5B.html
文章代碼(AID): #1ONNiDvR (R_Language)
討論串 (同標題文章)
文章代碼(AID): #1ONNiDvR (R_Language)