看板 R_Language 關於我們 聯絡資訊
我有多筆病人的肺功能資料,但是每個病人紀錄的時間點不規則,或是 總比數不同(收案時間差距幾個月),譬如以下的資料 [1] 0 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 上面這位有收到第18天,有17筆的肺功能資料(Y值) [1] 0 1 4 5 NA NA NA NA NA NA NA NA NA NA NA NA NA 上面個案剛收,只有4天的資料,所以後面都是NA 因為病人數目會一直增加,紀錄數值也會每天有變化,我目前已經自動化 到把資料匯入array中,第一個維度row是病人, 第二個維度column是不同的觀測數值(天數X;Y1;Y2;Y3), 第三個維度是病人收資料的流水號。 也已經成功根據不同參數,自動分組完成。 接下來,我們希望能畫出不同病人的肺功能數值變化,也就是多組X-Y折線圖。 我目前看lines或是ggplot2的範例,都是固定的X對應多組Y去繪圖, 但我們情況是X的vector,不管長度,或是數值一開始就不同。 請問這樣要哪種方式可以直接把這些不同的X-Y同時畫出來? [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) -- 起初,他們追殺共產主義者,我沒有說話,因為我不是共產主義者; 接著,他們追殺猶太人,我沒有說話,因為我不是猶太人; 後來,他們追殺工會成員,我沒有說話,因為我不是工會成員; 此後,他們追殺天主教徒,我沒有說話,因為我是新教教徒; 最後,他們奔我而來,卻再也沒有人站起來為我說話了。 《First They Came(他們首次來時)》,Martin Niemoller牧師(1892-1984) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.176.32.194 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1622038096.A.F9E.html
andrew43: 建議先melt成 long table,一列一個觀測,有一個病人多 05/26 22:56
andrew43: 列。 05/26 22:56
andrew43: 每一個病人多列。 05/26 22:57
andrew43: 之後ggplot,並facet_warp(vars(病人id)) 05/26 22:59
andrew43: facet可以指定scales 05/26 23:00
locka: 推A大,補充一下ggplot的哲學就是把資料整理成long table~ 05/27 03:24
locka: (是說如果病人id很多個,分組畫出來的圖會很擠很擠喔,慎用 05/27 03:24
locka: ) 05/27 03:24