كيفية رسم توزيع مربع كاي بسهولة في r


لإنشاء مخطط كثافة لتوزيع مربع كاي في R، يمكننا استخدام الوظائف التالية:

  • dchisq() لإنشاء دالة كثافة الاحتمال
  • منحنى () لرسم دالة كثافة الاحتمال

كل ما يتعين علينا القيام به لإنشاء المخطط هو تحديد درجات الحرية لـ dchisq() بالإضافة إلى النقاط الخارجية والخلفية للمنحنى() .

على سبيل المثال، يوضح التعليمة البرمجية التالية كيفية إنشاء مخطط كثافة لتوزيع مربع كاي مع 10 درجات حرية حيث يكون المحور السيني للمخطط بين 0 و40:

 curve(dchisq(x, df = 10), from = 0, to = 40)

تحرير مؤامرة الكثافة

يمكننا أيضًا تعديل مخطط الكثافة عن طريق إضافة عنوان وتغيير تسمية المحور Y وزيادة عرض الخط وتغيير لون الخط:

 curve(dchisq(x, df = 10), from = 0, to = 40,
      main = 'Chi-Square Distribution (df = 10)', #add title
      ylab = 'Density', #change y-axis label
      lwd = 2, #increase line width to 2
      col = 'steelblue') #change line color to steelblue

ملء مؤامرة الكثافة

بالإضافة إلى إنشاء مخطط الكثافة، يمكننا ملء جزء من المخطط باستخدام دالة polygon() بناءً على قيمة البداية والنهاية.

يوضح الكود التالي كيفية ملء جزء الكثافة من المخطط لقيم x بين 10 و 40:

 #create density curve
curve(dchisq(x, df = 10), from = 0, to = 40,
main = 'Chi-Square Distribution (df = 10)',
ylab = 'Density',
lwd = 2)

#create vector of x values
x_vector <- seq(10, 40)

#create vector of chi-square density values
p_vector <- dchisq(x_vector, df = 10)

#fill in portion of the density plot from 0 to 40
polygon(c(x_vector, rev(x_vector)), c(p_vector, rep(0, length(p_vector))),
        col = adjustcolor('red', alpha=0.3), border = NA)

يوضح الكود التالي كيفية ملء جزء الكثافة من المخطط لقيم x بين 0 و10:

 #create density curve
curve(dchisq(x, df = 10), from = 0, to = 40,
main = 'Chi-Square Distribution (df = 10)',
ylab = 'Density',
lwd = 2)

#create vector of x values
x_vector <- seq( 0, 10 )

#create vector of chi-square density values
p_vector <- dchisq(x_vector, df = 10)

#fill in portion of the density plot from 0 to 10
polygon(c(x_vector, rev(x_vector)), c(p_vector, rep(0, length(p_vector))),
        col = adjustcolor('red', alpha=0.3), border = NA)

يوضح الكود التالي كيفية ملء جزء مخطط الكثافة لقيم x خارج 95٪ المركزية من التوزيع:

 #create density curve
curve(dchisq(x, df = 10), from = 0, to = 40,
main = 'Chi-Square Distribution (df = 10)',
ylab = 'Density',
lwd = 2)

#find upper and lower values for middle 95% of distribution
lower95 <- qchisq(.025, 10)
upper95 <- qchisq(.975, 10)

#create vector of x values
x_lower95 <- seq(0, lower95)

#create vector of chi-square density values
p_lower95 <- dchisq(x_lower95, df = 10)

#fill in portion of the density plot from 0 to lower 95% value
polygon(c(x_lower95, rev(x_lower95)), c(p_lower95, rep(0, length(p_lower95))),
        col = adjustcolor('red', alpha=0.3), border = NA)

#create vector of x values
x_upper95 <- seq(upper95, 40)

#create vector of chi-square density values
p_upper95 <- dchisq(x_upper95, df = 10)

#fill in portion of the density plot for upper 95% value to end of plot
polygon(c(x_upper95, rev(x_upper95)), c(p_upper95, rep(0, length(p_upper95))),
        col = adjustcolor('red', alpha=0.3), border = NA)

أخيرًا، يوضح الكود التالي كيفية ملء جزء مخطط الكثافة لقيم x التي تقع داخل الـ 95% المركزية من التوزيع:

 #create density curve
curve(dchisq(x, df = 10), from = 0, to = 40,
main = 'Chi-Square Distribution (df = 10)',
ylab = 'Density',
lwd = 2)

#find upper and lower values for middle 95% of distribution
lower95 <- qchisq(.025, 10)
upper95 <- qchisq(.975, 10)

#create vector of x values
x_vector <- seq(lower95, upper95)

#create vector of chi-square density values
p_vector <- dchisq(x_vector, df = 10)

#fill in density plot
polygon(c(x_vector, rev(x_vector)), c(p_vector, rep(0, length(p_vector))),
        col = adjustcolor('red', alpha=0.3), border = NA)

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *