Re: [問題] 取絕對值找最大但要得知原有值

看板R_Language作者 (天)時間10年前 (2015/12/31 08:53), 9年前編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《girl5566 (5566520)》之銘言: : 文章分類提示: : - 問題: 當你想要問問題時,請使用這個類別 : [問題類型]: : 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) : [軟體熟悉度]: : 新手(沒寫過程式,R 是我的第一次) : [問題敘述]: : 想請問result 那欄為取絕對值後的最大值之原始值 result要如何取得? : X Y MAX_ABS RESULT : -3 5 5 5 : -5 3 5 -5 : [程式範例]: : data <- data.frame(x = c(-3,-5), y = c(5,3)) : max_abs <- apply(abs(data),1,max) : data <- cbind(data,max_abs) : [環境敘述]: : R3.1.2 win7 64bit : [關鍵字]: 1. dplyr (只有兩行) library(dplyr) data_df = data.frame(x = c(-3,-5), y = c(5,3)) data_df %>% mutate(result = ifelse(abs(x) > abs(y), x, y)) 2. apply (可多行) data_mat = matrix(c(-3,-5,5,3), 2) loc_max = apply(abs(data_mat), 1, which.max) result = data_mat[cbind(1:nrow(data_mat), loc_max)] -- R資料整理套件系列文: magrittr #1LhSWhpH (R_Language) http://tinyurl.com/1LhSWhpH data.table #1LhW7Tvj (R_Language) http://tinyurl.com/1LhW7Tvj dplyr(上) #1LhpJCfB (R_Language) http://tinyurl.com/1LhpJCfB dplyr(下) #1Lhw8b-s (R_Language) tidyr #1Liqls1R (R_Language) http://tinyurl.com/1Liqls1R -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.109.74.87 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1451523208.A.8DA.html

12/31 10:10, , 1F
data[,3] 既可.
12/31 10:10, 1F
請問你在說什麼? ※ 編輯: celestialgod (140.109.74.87), 12/31/2015 10:40:04
文章代碼(AID): #1MX7o8ZQ (R_Language)
文章代碼(AID): #1MX7o8ZQ (R_Language)