看板 R_Language 關於我們 聯絡資訊
各位先進好 有兩個小問題想請教版上的各位 我想用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
celestialgod: 這樣是六組十個號碼喔? 08/04 11:44
celestialgod: 不懂你要的排序是怎樣排序 08/04 11:44
celestialgod: 命名也沒說清楚 要怎麼命名 不太懂要幹嘛... 08/04 11:45
celestialgod: 麻煩利用E修改文章,補充你想要做的事情 08/04 11:52
謝謝您的回覆,抱歉沒有說清楚,我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
celestialgod: 排序:replicate(10, sort(sample(1:49,6))) 08/04 15:32
celestialgod: 命名就直接dimnames, rownames, colnames就好了吧 08/04 15:32
celestialgod: 還是不太懂命名的問題點在哪? 08/04 15:33
celestialgod: 直接help(rownames)試試看範例吧 08/04 15:37
celestialgod: 不想一開始抽出來就是排序的話 可以考慮用迴圈做 08/04 15:39
celestialgod: 這裡不推薦apply,是因為迴圈比較快 08/04 15:40
celestialgod: /改矩陣 08/04 15:40
celestialgod: EX:for(i in 1:nrow(m)) m[i,] = sort(m[i,]) 08/04 15:41
謝謝您,我的問題解決了,抱歉耽誤您的時間。 ※ 編輯: zxas10143 (1.167.234.134), 08/04/2015 16:04:40