1- الإحصاءات الوصفية للمتغيرات المتصلة:

نستدعى قاعدة بيانات البرنامج "mtcars":

View(mtcars)

استخدام دالة (summary) التي تعطينا بعض الإحصاءات:

summary(mtcars)


min

أدنى قيمة للمتغير

1st Qu

القيمة الواقعة في أعلى الربع الأول بعد ترتيب القيم تصاعديا

Median

الوسيط

Mean

المتوسط

3rd Qu

القيمة الواقعة في أعلى الربع الثالث بعد ترتيب القيم تصاعديا

Max

أكبر قيمة للمتغير

و الدالة السابقة صالحة للمتغيرات المتصلة، و عليه يمكن حصرها لهذه المتغيرات فقط، (نختار المتغيرات الكمية المتصلة فقط (mpg-disp-hp-drat-wt-qsec) بموقعها):


summary(mtcars[,c(1,3:7)])

الأمر الأخير مفاده استخراج إحصائيات للأعمدة (لأن المتغيرات ممثلة بالأعمدة): 1 و من 3 إلى 7. (لم نختر عدد الأسطر لأنه تهمنا كل أنواع السيارات).


يمكن استخراج إحصاءات أخرى، لكن هي صالحة لكل متغير، منها:

sd

الانحراف المعياري

var

التباين

sum

المجموع

range

المدى و هو الفرق ما بين أعلى قيمة و أدنى قيمة للمتغير

Length

حجم المشاهدات


يمكن استخراج إحصاءات أخرى، لكن هي صالحة لعدة متغيرات، منها:

cor

مصفوفة الارتباط

Var أو cov

مصفوفة التباين و التباين المشترك



دالة apply: استخراج إحصاءات لعدة متغيرات، حساب المتوسط لكل الأعمدة (المتغيرات):

-          للدلالة على الأعمدة (المتغيرات) نضع الرقم 2

-          للدلالة على الأسطر (الأفراد) نضع الرقم 1

apply(mtcars,2,mean)


استخراج إحصائية لبعض المتغيرات فقط (لأن بعض الإحصاءات تصلح فقط للمتغيرات المتصلة)، نختار المتغيرات الكمية المتصلة فقط (mpg-disp-hp-drat-wt-qsec) بموقعها:

apply(mtcars[,c(1,3:7)],2,mean)


إنشاء دالة:مثال كل متغير متوسطه مقسم على الانحراف المعياري له:

apply(mtcars[,c(1,3:7)],2,function(x)mean(x)/sd(x))


إيجاد إحصائية معينة لمتغير على حسب متغير أخر، شريطة أن يكون الأخير فئوي، مثال: متوسط سنوات الخبرة أو متوسط الأجر الشهري أو ... حسب متغير الجنس.

فيما يلي سنحسب المتوسط من قاعدة بيانات "mtcars" لمتغير: استهلاك الوقود لكل ميل بالجالون لكل نوع من عدد اسطوانات المحرك:

aggregate(mpg~cyl,data= mtcars,mean)


إيجاد إحصائية معينة لمتغيرات على حسب متغير شريطة أن يكون الأخير فئوي:

فيما يلي سنحسب المتوسط من قاعدة بيانات "mtcars" لمتغيري: عدد الأحصنة البخارية و استهلاك الوقود لكل ميل بالجالون لكل نوع من عدد اسطوانات المحرك:

aggregate(cbind(hp,mpg)~cyl,data= mtcars,mean)

أو إيجاد إحصائية معينة لمتغيرات على حسب عدة متغيرات فئوية:

aggregate(cbind(hp,mpg)~cyl+gear,data= mtcars,mean)


2- الإحصاءات الوصفية للمتغيرات الفئوية:

مثلا نبحث عن متوسط استهلاك الوقود لكل ميل بالجالون لكل نوع من علبة السرعة:

يجب أولا دائما التعريف بأن المتغير فئوي، مثلا متغير نوع علبة السرعة:

أتوماتيكي أو يدوي، لكي لا يعتبرها البرنامج متصلة و يجري عليها بعض العمليات، و

كذلك حتى تظهر أسماء أنواع المتغير، ففي حالتنا:

am<-factor(am,levels = c(0,1),labels = c("Automatic","Manual"))

إنشاء جداول التكرارات و النسب المئوية للمتغيرات الفئوية فيما بينها:
- التكرارات:
مثال: متغير علبة السرعة و متغير عدد اسطوانات المحرك، و لنعرف الأخير على أنه فئوي كما عرفنا الأول سابقا:

cyl<-factor(cyl,levels = c(4,6,8),labels = c("4 cylinder","6 cylinder","8 cylinder"))
tab<-table(cyl,am)

المتغير المذكور أولا يظهر في الأسطر و الثاني يظهر في الأعمدة.
إضافة المجموع عن طريق دالة addmargins للجدول السابق:

addmargins(tab)

إضافة المجموع كسطر (أي مجموع كل عمود):
addmargins(tab,1)
إضافة المجموع كسطر (أي مجموع كل عمود):
addmargins(tab,2)


- النسب المئوية:
النسب بالنسبة لكل سطر
prop.table(tab,1)
النسب بالنسبة لكل عمود
prop.table(tab,2)

النسب المئوية مع تقريب إلى رقمين بعد الفاصلة (يعني أربعة أرقام ككل)

round(prop.table(tab,2),4)*100

علما أن دالة round في العادة تتعامل مع الأرقام بعد الفاصلة.

مثال: نريد تقريب القيمتين إلى رقمين بعد الفاصلة:


3- حزمة مهمة لعمل الإحصاءات:

حزمة (psych):

بعض الإحصاءات الإضافية مثل الالتواء و التفرطح: في الأمر

حيث تفيدنا إحصائيتي التفرطح (kurtosis) في معرفة تمركز البيانات و الالتواء (skewness) في معرفة التوزيع الطبيعي للبيانات:

التفرطح: يساوي 3 معتدل، أقل من 3 مفرطح للقمة، أكبر من 3 مدبب للقمة.

الالتواء: حيث إن كانت القيمة ما بين 0.5- و 0.5 يكون التوزيع معتدل، و إن كان خارج 1- و 1 يكون غير معتدل.

trimmed: هو المتوسط الذي لا يأخذ في الحسبان القيم الشاذة، مثلا بعد أن يرتب تصاعديا كل القيم يحذف 10 بالمئة من القيم العليا و الدنيا.




Last modified: Wednesday, 27 March 2024, 11:32 PM