เส้นสปาเก็ตตี้ใน R โดยมีเวลาการวัดต่างกัน

ฉันมีเมทริกซ์ข้อมูลที่เรียกว่า Scores.csv ซึ่งมีลักษณะดังนี้:

ID      score   age    
1       23       12  
1       50       16  
2       25       13  
2       67       16  

ฉันใช้รหัสต่อไปนี้:

scores<-read.table("scores.csv",sep=",", header=T)
interaction.plot(scores$age,scores$id, scores$score, xlab="age",ylab="score", legend=F)

วิธีนี้ใช้ได้ดีหากอายุของ ID ทั้งหมดเท่ากัน (12 และ 16 สำหรับทั้งคู่) แต่เมื่อสิ่งเหล่านี้ต่างกัน ฉันจะได้รับพล็อตสปาเก็ตตี้ที่ว่างเปล่า


person Bous    schedule 24.11.2015    source แหล่งที่มา
comment
คุณเปิดให้ ggplot2 หรือไม่?   -  person Matias Andina    schedule 25.11.2015
comment
ฉัน! ฉันเคยเห็นการใช้งาน ggplot2 ที่เพิ่งเพิ่ม 0 เป็นจุดเริ่มต้นสำหรับทุก ๆ ID แต่นั่นไม่ใช่สิ่งที่ฉันกำลังมองหาจริงๆ   -  person Bous    schedule 25.11.2015
comment
คุณช่วยระบุ matrizx หรือบางส่วนได้ไหม?   -  person Matias Andina    schedule 25.11.2015
comment
df ‹- data.table(ID=c(1,1,2,2,3,3), คะแนน=c(23,50,25,67,22,55), อายุ=c(12,16,13) ,16,12,17))   -  person Bous    schedule 25.11.2015
comment
นี่คือทั้งหมดที่ฉันสามารถให้คุณได้ ข้อมูลที่แท้จริงเป็นความลับ   -  person Bous    schedule 25.11.2015
comment
library(lattice); xyplot(Score ~ Age, group=ID, data=df, type="l")จะให้สิ่งที่คุณต้องการหรือไม่?   -  person ekstroem    schedule 25.11.2015
comment
มันทำ! ขอบคุณมาก!   -  person Bous    schedule 25.11.2015


คำตอบ (1)


เพื่อความสนุก นี่คือ ggplot2

ตรวจสอบให้แน่ใจว่าคุณใช้ data.frame ไม่ใช่ data.table

library("ggplot2")    
df <- data.frame(ID=c(1,1,2,2,3,3), Score=c(23,50,25,67,22,55), Age=c(12,16,13,16,12,17))
    ggplot(df,aes(x=Age,y=Score,
             group=ID,color=factor(ID)))+
         geom_point()+geom_line()

ป้อนคำอธิบายรูปภาพที่นี่

และขัดแตะ (ekstroem สมควรได้รับเครดิตสำหรับอันนี้)

library(lattice); xyplot(Score ~ Age, group=ID, data=df, type="l")

ป้อนคำอธิบายรูปภาพที่นี่ 2

ฉันใช้ความสวยงามเริ่มต้นสำหรับแปลงนี้ คุณอาจต้องการปรับแต่งการเพิ่มพารามิเตอร์อื่นๆ

person Matias Andina    schedule 25.11.2015