[問題] 排序問題

看板R_Language作者 (~無言以對~)時間9年前 (2015/08/04 11:36), 9年前編輯推噓0(0012)
留言12則, 1人參與, 最新討論串1/1
各位先進好 有兩個小問題想請教版上的各位 我想用R來進行大樂透的抽獎與對奨 也就是抽出10000組完全不重複的彩券進行對奨 下行是抽樣(我先抽10組) replicate(6, sample(c(1:49), size=10, replace=FALSE) 抽出後我想對這10組進行排序 但目前了解的排序似乎是要先指定特定的row才可 因為數量蠻大的,想請教是否有其他方法可以對這樣的矩陣進行排序呢 另一個問題就是,是否有辦法比較快速的方法對大量的變項命名,而非逐一命名 還煩請版上先進們解惑 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.167.234.134 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1438659386.A.DD3.html

08/04 11:44, , 1F
這樣是六組十個號碼喔?
08/04 11:44, 1F

08/04 11:44, , 2F
不懂你要的排序是怎樣排序
08/04 11:44, 2F

08/04 11:45, , 3F
命名也沒說清楚 要怎麼命名 不太懂要幹嘛...
08/04 11:45, 3F

08/04 11:52, , 4F
麻煩利用E修改文章,補充你想要做的事情
08/04 11:52, 4F
謝謝您的回覆,抱歉沒有說清楚,我PO上去的語法會以重覆六次共10個號碼的原因是因為 這樣output出來的樣子會是一個row=6,col=10的矩陣比較方便觀看就不用在轉置,不過後 來發現要刪除組內重覆會變很麻煩而作罷,所以我就改回來是重複10次6個號碼然後在T()了 ;至於排序的問題則是希望抽出來的6個數字能由小到大進行排序;命名的部分則是,不 知是否有方法能夠一次對大量的row或col進行名稱的修改呢(例如一次修改成a~z*1~100) ※ 編輯: zxas10143 (1.167.234.134), 08/04/2015 15:25:08 ※ 編輯: zxas10143 (1.167.234.134), 08/04/2015 15:27:15

08/04 15:32, , 5F
排序:replicate(10, sort(sample(1:49,6)))
08/04 15:32, 5F

08/04 15:32, , 6F
命名就直接dimnames, rownames, colnames就好了吧
08/04 15:32, 6F

08/04 15:33, , 7F
還是不太懂命名的問題點在哪?
08/04 15:33, 7F

08/04 15:37, , 8F
直接help(rownames)試試看範例吧
08/04 15:37, 8F

08/04 15:39, , 9F
不想一開始抽出來就是排序的話 可以考慮用迴圈做
08/04 15:39, 9F

08/04 15:40, , 10F
這裡不推薦apply,是因為迴圈比較快
08/04 15:40, 10F

08/04 15:40, , 11F
/改矩陣
08/04 15:40, 11F

08/04 15:41, , 12F
EX:for(i in 1:nrow(m)) m[i,] = sort(m[i,])
08/04 15:41, 12F
謝謝您,我的問題解決了,抱歉耽誤您的時間。 ※ 編輯: zxas10143 (1.167.234.134), 08/04/2015 16:04:40
文章代碼(AID): #1Lm3CwtJ (R_Language)
文章代碼(AID): #1Lm3CwtJ (R_Language)