كيفية إنشاء pivottables بسرعة في r
في Excel، توفر الجداول المحورية طريقة سهلة لتجميع البيانات وتلخيصها.
على سبيل المثال، إذا كانت لدينا مجموعة البيانات التالية في Excel، فيمكننا استخدام جدول محوري لتلخيص إجمالي المبيعات بسرعة حسب المنطقة:
هذا يخبرنا:
- المنطقة أ لديها 51 إجمالي المبيعات
- المنطقة ب لديها 85 إجمالي المبيعات
- حققت المنطقة ج 140 إجمالي المبيعات
أو يمكننا تلخيص ذلك بمقياس آخر مثل متوسط المبيعات حسب المنطقة:
اتضح أنه يمكننا إنشاء جداول محورية مماثلة بسرعة في لغة R باستخدام الدالتين group_by() و Summary() من الحزمة dplyr .
يقدم هذا البرنامج التعليمي عدة أمثلة لكيفية القيام بذلك.
مثال: إنشاء جداول PivotTables في R
أولاً، لنقم بإنشاء نفس مجموعة البيانات في R التي استخدمناها في الأمثلة السابقة من Excel:
#create data frame df <- data. frame (region=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C'), device=c('X', 'X', 'Y', 'X', 'Y', 'Y', 'X', 'X', 'Y', 'Y'), sales=c(12, 18, 21, 22, 34, 29, 38, 36, 34, 32)) #view data frame df region device sales 1AX 12 2AX18 3 AY 21 4 BX22 5 BY 34 6 BY 29 7 CX 38 8CX36 9 CY 34 10 CY 32
بعد ذلك، لنقم بتحميل حزمة dplyr واستخدام الدالتين group_by() و Summary() للتجميع حسب المنطقة والعثور على مجموع المبيعات حسب المنطقة:
library (dplyr) #find sum of sales by region df %>% group_by (region) %>% summarize (sum_sales = sum (sales)) # A tibble: 3 x 2 region sum_sales 1 to 51 2 B 85 3 C 140
يمكننا أن نرى أن هذه الأرقام تتطابق مع الأرقام الموضحة في المثال التمهيدي لبرنامج Excel.
يمكننا أيضًا حساب متوسط المبيعات حسب المنطقة:
#find average sales by region df %>% group_by (region) %>% summarize (mean_sales = mean (sales)) # A tibble: 3 x 2 region mean_sales 1 to 17 2 B 28.3 3 C 35
مرة أخرى، تتطابق هذه الأرقام مع الأرقام الموضحة في مثال Excel السابق.
لاحظ أنه يمكننا أيضًا التجميع حسب متغيرات متعددة. على سبيل المثال، يمكننا العثور على مجموع المبيعات مجمعة حسب المنطقة ونوع الجهاز:
#find sum of sales by region and device type df %>% group_by (region, device) %>% summarize (sum_sales = sum (sales)) # A tibble: 6 x 3 # Groups: region [3] region device sum_sales 1AX30 2 AY 21 3 BX22 4 BY 63 5 CX 74 6 CY 66
مصادر إضافية
كيفية إجراء VLOOKUP (على غرار Excel) في R
الدليل الكامل: كيفية تجميع البيانات وتلخيصها في لغة R