[問題] 取矩陣的非對角線元素之組合名稱

看板R_Language作者 (討厭有好心推文後刪文者)時間10年前 (2014/05/02 18:14), 編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/3 (看更多)
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 使用者(已經有用R 做過不少作品) [問題敘述]: 對於具有 colnames 和 rownames 的一個 matrix, 該如何取得所有非對角線元素的 colnames 和 rownames 的組合的字串向量? [程式範例]: M <- matrix(1:25, 5) colnames(M) <- c("a","b","c","d","e") rownames(M) <- c("a","b","c","d","e") 可得到 M # a b c d e #a 1 6 11 16 21 #b 2 7 12 17 22 #c 3 8 13 18 23 #d 4 9 14 19 24 #e 5 10 15 20 25 接下來,我想取得一個字串向量 mynames 使其結果為 c("b-a" , "c-a", "d-a", "e-a", "c-b", ... , "e-c", "e-d") 也就是矩陣 M 的左下側非對角線元素的列名與欄名組合。 請教有沒有什麼方式可以快速達成? 用 loop 是可以達成,但我想應該有更乾淨的辦法。 -- http://apansharing.blogspot.com/ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.37.172 ※ 文章網址: http://www.ptt.cc/bbs/R_Language/M.1399025671.A.44D.html

05/02 20:48, , 1F
cbind(rownames(M)[c(2:5,3:5,4:5,5)],rep(colnames(M),
05/02 20:48, 1F

05/02 20:49, , 2F
,c(4,3,2,1))
05/02 20:49, 2F

05/02 20:49, , 3F
paste by row with sep="-"
05/02 20:49, 3F
文章代碼(AID): #1JOt07HD (R_Language)
文章代碼(AID): #1JOt07HD (R_Language)