→ clansoda: 有點看不懂,你們複選題這邊不用boolean vector來存嗎? 01/06 17:11
→ askpeople: 樓上大大是說我的題項嗎? 01/06 17:15
→ askpeople: 不知道你指的是否是我的迴圈中的儲存r22嗎? 01/06 17:16
→ clansoda: 我是指分析的時候,你們都是中文的話可能會沒那麼好做 01/06 17:21
→ clansoda: 如果用boolean vector存複選題的題項會比較好分析 01/06 17:21
→ askpeople: 喔喔 了解了,你的意思是要我把中文欄位改掉囉? 01/06 17:26
→ clansoda: 你的這種存法會有很多空格吧,到時候要分析的時候 01/06 17:26
→ clansoda: 會困難重重,除非你只想知道總數或比例之類的 01/06 17:27
→ askpeople: 然後選項儘量不要用中文 01/06 17:27
→ askpeople: 我目前只是要統計出每個系在每個選項的數目分布而已 01/06 17:28
→ clansoda: 例如說你有一個複選題有20個選項 你就把column設成 01/06 17:28
→ askpeople: 這篇文章的重點就是迴圈寫法不知怎麼改 01/06 17:28
→ clansoda: 2-1, 2-2 ..... 2-20 01/06 17:28
→ askpeople: 好,我會參考你說的 感謝 01/06 17:29
→ celestialgod: R的stack不就可以直接完成嗎.... 01/06 19:01
推 celestialgod: 或是reshape2,data.table的melt 01/06 19:02
→ askpeople: 對於r沒很熟悉 所以套件不太清楚@@ 我去研究一下 01/06 20:56
推 clsmbstu: reshape2::melt(data31, "系所") 01/07 01:08
→ askpeople: 很感謝上面的幾位大大指點指令與套件 01/07 11:29
→ askpeople: 如果說我想練習迴圈,也是有辦法寫嗎? 01/07 11:29
→ clsmbstu: 我想問題是出在 ri = cbind(data31[,1],data31[,i+1]) 01/07 12:54
→ clsmbstu: R會以為你要把每次cbind的結果都存到叫"ri"的東西 01/07 12:55
→ clsmbstu: assign(paste0("r",i),cbind(data31[,1],data31[,i+1])) 01/07 12:58
→ clsmbstu: 這樣寫才會每次把結果存進不同的variable 之後才能操弄 01/07 12:59
→ clsmbstu: 不過等你學會lapply等function以後 應該會更喜歡把這些 01/07 12:59
→ clsmbstu: 類似格式的資料(例如rXX)全部整理進一個list 更方便 01/07 13:00
→ askpeople: 之後我想把產生的r1,...r22合併 嘗試用以下寫法: 01/10 12:14
→ askpeople: r = paste0("r",1:22) 然後lapply(r, rbind) 01/10 12:14
→ askpeople: 現在是希望把r1..r22塞到cbind裡面,可想不出好的方式 01/10 12:16
→ askpeople: 我自己已經用melt處理過,但想增強寫迴圈的能力 (Orz) 01/10 12:16
→ celestialgod: 能不用迴圈就不要用迴圈... 01/10 18:33
→ celestialgod: 而且你好像沒分清楚變數名稱跟字串差異= = 01/10 18:33
→ askpeople: 我用paste0這樣,發現變成字串"r1"..所以不知道怎麼辦 01/11 09:31
→ askpeople: 而assign我了解了一下,知道是給變數一個數值 01/11 09:33