كيفية إنشاء مخطط مبعثر مع خط الانحدار في r
في كثير من الأحيان، عندما نجري انحدارًا خطيًا بسيطًا، نرغب في إنشاء مخطط تبعثر لتصور المجموعات المختلفة لقيم x وy.
لحسن الحظ، R يجعل من السهل إنشاء سحب نقطية باستخدام الدالة مؤامرة () . على سبيل المثال:
#create some fake data data <- data.frame(x = c(1, 1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 11, 11), y = c(13, 14, 17, 12, 23, 24, 25, 25, 24, 28, 32, 33, 35, 40, 41)) #create scatterplot of data plot(data$x, data$y)
من السهل أيضًا إضافة خط انحدار إلى مخطط التشتت باستخدام الدالة abline() .
على سبيل المثال:
#fit a simple linear regression model model <- lm(y ~ x, data = data) #add the fitted regression line to the scatterplot abline(model)
يمكننا أيضًا إضافة خطوط فاصل الثقة إلى المخطط باستخدام وظيفة التنبؤ () :
#define range of x values newx = seq(min(data$x),max(data$x),by = 1) #find 95% confidence interval for the range of x values conf_interval <- predict(model, newdata=data.frame(x=newx), interval="confidence", level = 0.95) #create scatterplot of values with regression line plot(data$x, data$y) abline(model) #add dashed lines (lty=2) for the 95% confidence interval lines(newx, conf_interval[,2], col="blue", lty=2) lines(newx, conf_interval[,3], col="blue", lty=2)
أو يمكننا بدلاً من ذلك إضافة خطوط الفاصل الزمني للتنبؤ إلى المخطط عن طريق تحديد نوع الفاصل الزمني في وظيفة التنبؤ () :
#define range of x values newx = seq(min(data$x),max(data$x),by = 1) #find 95% prediction interval for the range of x values pred_interval <- predict(model, newdata=data.frame(x=newx), interval="prediction" , level = 0.95) #create scatterplot of values with regression line plot(data$x, data$y) abline(model) #add dashed lines (lty=2) for the 95% confidence interval lines(newx, pred_interval[,2], col="red", lty=2) lines(newx, pred_interval[,3], col="red", lty=2)
أخيرًا، يمكننا أن نجعل الحبكة أكثر جمالية من خلال إضافة عنوان وتغيير أسماء المحاور وتغيير شكل نقاط الحبكة الفردية.
plot(data$x, data$y, main = "Scatterplot of x vs. y", #add title pch=16, #specify points to be filled in xlab='x', #change x-axis name ylab='y') #change y-axis name abline(model, col='steelblue') #specify color of regression line
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:
كيفية تسمية النقاط على مخطط التشتت في R
كيفية استخدام وظيفة Jitter في R للسحب النقطية