كيفية قياس الأعمدة الرقمية فقط في r (مع مثال)
يمكنك استخدام بناء الجملة التالي من الحزمة dplyr لقياس الأعمدة الرقمية لإطار البيانات في R فقط:
library (dplyr) df %>% mutate(across(where(is. numeric ), scale))
يوضح المثال التالي كيفية استخدام هذه الوظيفة عمليًا.
مثال: قم بقياس الأعمدة الرقمية فقط باستخدام dplyr
لنفترض أن لدينا إطار البيانات التالي في R الذي يحتوي على معلومات حول لاعبي كرة السلة المختلفين:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'), dots=c(22, 34, 30, 12, 18), assists=c(7, 9, 9, 12, 14), rebounds=c(5, 10, 10, 8, 8)) #view data frame df team points assists rebounds 1 to 22 7 5 2 B 34 9 10 3 C 30 9 10 4 D 12 12 8 5 E 18 14 8
لنفترض أننا نريد استخدام دالةالقياس في R لقياس الأعمدة الرقمية لإطار البيانات فقط.
يمكننا استخدام بناء الجملة التالي للقيام بذلك:
library (dplyr)
#scale only the numeric columns in the data frame
df %>% mutate(across(where(is. numeric ), scale))
team points assists rebounds
1 A -0.1348400 -1.153200 -1.56144012
2 B 1.2135598 -0.432450 0.87831007
3 C 0.7640932 -0.432450 0.87831007
4 D -1.2585064 0.648675 -0.09759001
5 E -0.5843065 1.369425 -0.09759001
لاحظ أن القيم الموجودة في الأعمدة الرقمية الثلاثة ( النقاط ، التمريرات الحاسمة والمرتدات ) تم تغيير حجمها بينما ظل عمود الفريق دون تغيير.
الملاحظات الفنية
تستخدم الدالة scale() في R بناء الجملة الأساسي التالي:
scale(x, center = TRUE , scale = TRUE )
ذهب:
- x : اسم الكائن المراد قياسه
- المركز : ما إذا كان سيتم طرح المتوسط عند القياس. الافتراضي هو الصحيح.
- مقياس : ما إذا كان سيتم القسمة على الانحراف المعياري عند القياس. الافتراضي هو الصحيح.
تستخدم هذه الدالة الصيغة التالية لحساب القيم المقاسة:
تحجيم x = ( الأصلي x – x̄) / s
ذهب:
- الأصلي x : قيمة x الأصلية
- x̄ : تعني العينة
- s : الانحراف المعياري للعينة
يُعرف هذا أيضًا باسم تطبيع البيانات، والذي يقوم ببساطة بتحويل كل قيمة أصلية إلى درجة z .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى باستخدام dplyr:
كيفية تحديد الأعمدة بالاسم باستخدام dplyr
كيفية تحديد الأعمدة حسب الفهرس باستخدام dplyr
كيفية استخدام Select_if مع شروط متعددة في dplyr