كيفية حساب النسبة المئوية حسب المجموعة في r (مع مثال)
يمكنك استخدام بناء الجملة التالي لحساب النسبة المئوية حسب المجموعة في R:
library (dplyr)
df %>%
group_by(group_var) %>%
mutate(percent = value_var/sum(value_var))
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: حساب النسبة المئوية حسب المجموعة في R
لنفترض أن لدينا إطار البيانات التالي الذي يوضح النقاط التي سجلها لاعبو كرة السلة من فرق مختلفة:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'),
points=c(12, 29, 34, 14, 10, 11, 7, 36, 34, 22))
#view data frame
df
team points
1 to 12
2 to 29
3 to 34
4 to 14
5 to 10
6 B 11
7 B 7
8 B 36
9 B 34
10 B 22
يمكننا استخدام الكود التالي لإنشاء عمود جديد في إطار البيانات يعرض النسبة المئوية لإجمالي النقاط المسجلة، مجمعة حسب الفريق:
library (dplyr) #calculate percentage of points scored, grouped by team df %>% group_by(team) %>% mutate(percent = points/sum(points)) # A tibble: 10 x 3 # Groups: team [2] team points percent 1 to 12 0.121 2 A 29 0.293 3 A 34 0.343 4 A 14 0.141 5 A 10 0.101 6 B 11 0.1 7 B 7 0.0636 8 B 36 0.327 9 B 34 0.309 10 B 22 0.2
يشير عمود “النسبة المئوية” إلى النسبة المئوية لإجمالي النقاط التي سجلها هذا اللاعب في فريقه.
على سبيل المثال، سجل لاعبو الفريق “أ” إجمالي 99 نقطة.
لذا فإن اللاعب في الصف الأول من إطار البيانات الذي سجل 12 نقطة سجل إجمالي 12/99 = 12.12% من إجمالي نقاط الفريق أ.
وبالمثل، فإن لاعب الصف الثاني في قاعدة البيانات الذي سجل 29 نقطة سجل إجمالي 29/99 = 29.29% من إجمالي النقاط للفريق أ.
وما إلى ذلك وهلم جرا.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:
كيفية حساب القيم الفريدة حسب المجموعة في R
كيفية حساب إحصائيات الملخص حسب المجموعة في R
كيفية حساب المبلغ حسب المجموعة في R