معالجة البيانات في R: ما هي المتغيرات باستخدام حزمة dplyr
نشرت: 2020-03-26جدول المحتويات
مقدمة
بصرف النظر عن الموظفين والبنية التحتية ، تعد البيانات لبنة البناء الجديدة لأي شركة. من الشركات الكبيرة إلى الصناعات الصغيرة ، البيانات هي الوقود الذي يحرك أعمالهم. ترتبط هذه البيانات بالمعاملات التجارية اليومية وبيانات شراء العملاء وبيانات المبيعات والمخططات المالية وإحصاءات الأعمال والحملات التسويقية وغير ذلك الكثير. لهذا السبب قال Tim O'Reilly ، مؤسس O'Reilly Media ، إننا ندخل موقفًا ستكون فيه البيانات أكثر أهمية من البرامج.
لكن ما العمل بهذا الكم من البيانات؟ تستخدم الشركات هذه البيانات لاستخلاص رؤى قيمة حول أداء أعمالها. يقومون بتوظيف علماء البيانات الذين يقومون بمعالجة البيانات في R لفهم هذه البيانات. على سبيل المثال ، فهم بيانات المبيعات والتسويق للعام الماضي سيمنحهم فكرة عن مكانهم. أظهرت دراسة حديثة أنه من المتوقع أن تبلغ قيمة سوق تحليلات البيانات 77.6 مليار دولار بحلول عام 2023.
يتم تعيين علماء البيانات لفهم هذه البيانات من خلال عملية تسمى معالجة البيانات.
ما هو التلاعب بالبيانات؟
معالجة البيانات هي عملية تنظيم البيانات لقراءتها وفهمها بشكل أفضل. على سبيل المثال ، قد يحصل مسؤولو الشركة على بيانات العملاء من أنظمتهم وسجلاتهم. في الغالب ، سيتم تخزين هذه البيانات في برنامج CRM (إدارة علاقات العملاء) وأوراق Excel. لكن قد لا يتم تنظيمها بشكل صحيح. تتضمن معالجة البيانات طرقًا لتنظيم كل هذه البيانات ، على سبيل المثال وفقًا للترتيب الأبجدي.
يمكن فرز البيانات حسب التاريخ أو الوقت أو الرقم التسلسلي أو أي مجال آخر. يستخدم الأشخاص في قسم الحسابات بإحدى الشركات البيانات لتحديد اتجاهات المبيعات وتفضيلات المستخدم وإحصاءات السوق وأسعار المنتجات. يستخدم المحللون الماليون البيانات لفهم كيفية أداء سوق الأوراق المالية والاتجاهات وأفضل الأسهم التي ينبغي عليهم الاستثمار فيها.
علاوة على ذلك ، يمكن استخدام بيانات خادم الويب لفهم مقدار حركة المرور على موقع الويب. في هذا العصر التكنولوجي ، تعد إنترنت الأشياء مثالاً على تقنية يتم فيها الحصول على البيانات من أجهزة استشعار متصلة بالآلات. تستخدم هذه البيانات لتحديد أداء الجهاز ، وما إذا كان به أي عيوب. يعد التلاعب بالبيانات أمرًا بالغ الأهمية في إنترنت الأشياء حيث ستبلغ قيمة السوق 81.67 مليار دولار بحلول عام 2025.
يتم تنفيذ معالجة البيانات بشكل شائع باستخدام لغة برمجة تسمى R. دعنا نعرف اللغة بشكل أفضل قليلاً.
ما هو R؟
لفهم معالجة البيانات في R ، عليك أن تعرف أساسيات R. إنها لغة برمجة حديثة تُستخدم لتحليل البيانات والحوسبة الإحصائية والذكاء الاصطناعي. تم إنشاء اللغة في عام 1993 بواسطة Ross Ihaka و Robert Gentleman . في الوقت الحاضر ، يستخدم الباحثون ومحللو البيانات والعلماء والإحصائيون لغة R لتحليل البيانات وتنظيفها وتصورها.
يحتوي R على كتالوج ضخم يتكون من طرق رسومية وإحصائية يمكن أن تدعم التعلم الآلي والانحدار الخطي والاستدلال الإحصائي والسلاسل الزمنية. بموجب رخصة جنو العمومية ، اللغة متاحة مجانًا لأنظمة التشغيل مثل Windows و Mac و Linux. إنها منصة سهلة ، مما يعني أن رمز R المكتوب على منصة واحدة يمكن تنفيذه بسهولة في منصة أخرى.
تعتبر R الآن لغة البرمجة الرئيسية لعلوم البيانات. لكنها لغة شاملة حيث يمكنك استخدامها لتطوير البرامج بالإضافة إلى المهام المعقدة مثل النمذجة الإحصائية. يمكنك تطوير تطبيقات الويب باستخدام حزمة RShiny.
إنها لغة قوية تستخدمها بعض أفضل الشركات في العالم مثل Google و Facebook.
دعنا نتحقق من بعض أهم ميزات R:
- يحتوي على CRAN (شبكة أرشيف R شاملة) وهو مستودع يحتوي على أكثر من 10000 حزمة R ، مع جميع الوظائف المطلوبة للعمل مع البيانات
- إنها لغة برمجة مفتوحة المصدر . هذا يعني أنه يمكنك تنزيله مجانًا وحتى المساهمة في تطويره وتحديث ميزاته وتخصيص وظائفه الحالية
- يمكنك إنشاء تصورات عالية الجودة من البيانات الموجودة في متناول اليد من المكتبات الرسومية المفيدة لـ R مثل ggplot2 و plotly
- لغة R هي لغة سريعة جدًا. نظرًا لأنها لغة برمجة مفسرة ، فليس هناك حاجة لمترجم لتحويل برامج R إلى تعليمات برمجية قابلة للتنفيذ ، وبالتالي يعمل البرنامج النصي R بشكل أسرع
- يمكن لـ R إجراء مجموعة متنوعة من العمليات الحسابية المعقدة في لمح البصر ، تتكون من مصفوفات وإطارات بيانات ومتجهات . هناك العديد من العوامل لإجراء هذه الحسابات
- يتعامل مع البيانات المنظمة وغير المهيكلة. تتوفر امتدادات البيانات الكبيرة و SQL للتعامل مع جميع أنواع البيانات
- لدى R مجتمع ينمو باستمرار ولديه العقول الأكثر ذكاءً. يساهم هؤلاء الأشخاص باستمرار في لغة البرمجة من خلال تطوير مكتبات وتحديثات r
- يمكنك بسهولة دمج R مع لغات البرمجة الأخرى مثل Python و Java و C ++. يمكنك أيضًا دمجه مع Hadoop للحوسبة الموزعة
الآن بعد أن جمعت أساسيات لغة البرمجة R ، دعنا نتعمق في الأشياء المثيرة!
المتغيرات في R.
أثناء البرمجة في R أو إجراء أي معالجة للبيانات في R ، عليك التعامل مع المتغيرات. تُستخدم المتغيرات لتخزين البيانات التي قد تكون في شكل سلاسل أو أعداد صحيحة أو أعداد صحيحة بنقطة عائمة أو قيم منطقية فقط. تحجز هذه المتغيرات مساحة في الذاكرة لمحتوياتها. على عكس لغات البرمجة التقليدية ، يتم تعيين المتغيرات في R جنبًا إلى جنب مع كائنات R.
لا تحتوي المتغيرات على نوع بيانات ، ولكنها تحصل على نوع الكائن R الذي تم تعيينه له. أكثر كائنات R شيوعًا هي:
- ثلاثة أبعاد
- القوائم
- المصفوفات
- المصفوفات
- عوامل
- إطارات البيانات
هياكل البيانات هذه مهمة للغاية لمعالجة البيانات في البحث وتحليل البيانات. دعونا نلقي نظرة عليها بمزيد من التفصيل لفهم التلاعب الأساسي بالبيانات:
ثلاثة أبعاد
إنها أبسط هياكل البيانات وتستخدم لبيانات ذات بعد واحد. أنواع النواقل الذرية هي:
- عدد صحيح
- منطقي
- رقمي
- مركب
- حرف
عندما تنشئ قيمة في R ، فإنها تصبح متجهًا أحادي العنصر بطول 1. على سبيل المثال ،
طباعة ("ABC") ؛ # متجه عنصر واحد من نوع الحرف
print (10.5) # متجه عنصر واحد من نوع مزدوج
يتم الوصول إلى العناصر الموجودة في المتجهات باستخدام أرقام الفهرس الخاصة بها. تبدأ مواضع الفهرس في المتجهات من 1. على سبيل المثال ،
t <- c ("الاثنين" ، "الثلاثاء" ، "الأربعاء" ، "السبت")
u <- t [c (1،2،3)]
طباعة (ش)
ستكون النتيجة "الاثنين" "الثلاثاء" "الأربعاء"
القوائم
هذه كائنات في R تُستخدم للاحتفاظ بأنواع مختلفة من العناصر بداخلها. يمكن أن تكون هذه أعدادًا صحيحة وسلاسل وحتى قوائم. إذا تعذر الاحتفاظ بالبيانات في إطار بيانات أو مصفوفة ، فهذا هو الخيار الأفضل. يمكن أن تحتوي القوائم أيضًا على مصفوفة. يمكنك إنشاء قوائم باستخدام طريقة list ().
استخدم الكود التالي لإنشاء قائمة:
list_data <- list ("Black"، "Green"، c (11،4،14)، TRUE، 31.22، 120.5)
طباعة (list_data)
يمكن الوصول إلى عناصر القائمة باستخدام فهارس القائمة.
print (list_data [1]) # الرمز يطبع العنصر الأول من القائمة
مثال على معالجة البيانات بالقوائم:
list_data [4] <- NULL # هذا الكود يزيل العنصر الأخير من القائمة إذا كان يحتوي على 4 عناصر
قراءة: R vs Python for Data Science
المصفوفات
المصفوفات هي كائنات يمكن استخدامها لتخزين نوع بيانات واحد فقط. يمكن تخزين البيانات ذات البعدين الأكثر في المصفوفات. لهذا ، يجب عليك استخدام الدالة array () التي تأخذ المتجهات كمدخلات. يستخدم القيمة الموجودة في المعلمة المعتمة لإنشاء المصفوفة.
على سبيل المثال ، انظر إلى الكود التالي:
vector_result <- مجموعة (c (vectorA، vectorB)، قاتمة = c (3،3،2))
طباعة (vector_result)
المصفوفات
في كائنات R هذه ، يتم تنظيم العناصر في تخطيط ثنائي الأبعاد. تحتوي المصفوفات على عناصر من أنواع ذرية متشابهة. هذه مفيدة عندما تنتمي العناصر إلى فئة واحدة. يتم إنشاء المصفوفات التي تحتوي على عناصر رقمية للحسابات الرياضية. يمكنك إنشاء مصفوفات باستخدام دالة matrix ().
الصيغة الأساسية لإنشاء مصفوفة مذكورة أدناه:
المصفوفة (data، nrow، ncol، byrow، dimnames)
- البيانات - هذا هو متجه الإدخال الذي يصبح عنصر البيانات للمصفوفة
- Nrow - هذا هو عدد الصفوف التي تريد إنشاءها
- Ncol - هذا هو عدد الأعمدة التي تريد إنشاءها
- Byrow - هذا دليل منطقي. إذا كانت قيمتها TRUE ، فسيتم ترتيب عناصر المتجه حسب الصف
- Dimname - الأسماء المعطاة للأعمدة والصفوف
عوامل
تُستخدم كائنات R هذه لتصنيف البيانات وتخزينها كمستويات. إنها جيدة للنمذجة الإحصائية وتحليل البيانات. يمكن تخزين كل من الأعداد الصحيحة والسلاسل في عوامل. يمكنك استخدام الدالة factor () لإنشاء عامل من خلال توفير متجه كمدخل للطريقة.

إطارات البيانات
له هيكل ثنائي الأبعاد مثل مصفوفة بها صفوف وأعمدة. هنا ، يحتوي كل صف على مجموعة من القيم التي تنتمي إلى كل عمود. تحتوي الأعمدة على قيمة متغير واحد. يتم استخدامها لتمثيل البيانات من جداول البيانات. يمكن استخدامها لتخزين البيانات من نوع العامل أو الرقم أو الحرف.
يحتوي إطار البيانات على الميزات التالية:
- يجب أن تكون أسماء الصفوف فريدة
- يجب ألا تكون أسماء الأعمدة فارغة
- يجب أن يكون عدد عناصر البيانات في كل عمود هو نفسه
معالجة البيانات في R.
أثناء معالجة البيانات في R ، تتمثل الخطوة الأولى في إنشاء عينات صغيرة من البيانات من مجموعة بيانات ضخمة. يتم ذلك لأنه لا يمكن تحليل مجموعة البيانات بأكملها في وقت واحد. عادة ، يقوم محللو البيانات بإنشاء مجموعة فرعية تمثيلية من مجموعة البيانات. هذا يساعدهم على تحديد الاتجاهات والأنماط في مجموعة البيانات الأكبر. وتسمى عملية أخذ العينات هذه أيضًا الإعداد الجزئي .
الطرق المختلفة لإنشاء مجموعة فرعية في R هي كما يلي:
- $ - هذا يحدد عنصرًا واحدًا من البيانات وتكون نتيجته دائمًا متجهًا
- [[- يُرجع عامل التقسيم هذا أيضًا عنصرًا واحدًا ، ولكن يمكنك الرجوع إلى العناصر من خلال مواقعها
- [- يُستخدم هذا العامل لإعادة عناصر متعددة من البيانات
بعض الوظائف الأساسية لمعالجة البيانات في R هي:
عينة () وظيفة
كما يوحي الاسم ، يتم استخدام طريقة العينة () لإنشاء عينات بيانات من مجموعة بيانات أكبر. إلى جانب هذا الأمر ، ذكرت عدد العينات التي ترغب في سحبها من مجموعة البيانات أو المتجه. الصيغة الأساسية هي كما يلي:
العينة (x ، الحجم ، الاستبدال = FALSE ، prob = NULL)
x - يمكن أن يكون هذا متجهًا أو مجموعة بيانات من عناصر متعددة يجب اختيار العينة منها
الحجم - هذا عدد صحيح موجب يشير إلى عدد العناصر المراد تحديدها
استبدال - يمكن أن يكون هذا صحيحًا أو خطأ ، سواء كنت تريد أخذ العينات باستبدال أو بدونه
prob - إنها حجة تستخدم لتوفير متجه للأوزان للحصول على عناصر المتجه التي يتم أخذ عينات منها
دالة الجدول ()
تقوم هذه الوظيفة بإنشاء جدول تكراري يُستخدم لحساب عدد القيم الفريدة لمتغير معين. على سبيل المثال ، دعنا ننشئ جدول تردد بمجموعة بيانات قزحية العين:
الجدول (الأنواع $ القزحية)
يُنشئ الرمز المكتوب أعلاه جدولاً يصور أنواع الأنواع في مجموعة بيانات القزحية.
مكرر ()
يتم استخدام الطريقة المكررة () لتحديد القيم المكررة وإزالتها من مجموعة البيانات. يأخذ متجهًا أو إطار بيانات كوسيطة ويعيد True للعناصر المكررة. علي سبيل المثال،
مكرر (ج (1،1،3))
سيؤدي هذا إلى التحقق من العناصر المكررة وإرجاع True أو False.
اقرأ أيضًا : شجرة القرار في R.
معالجة البيانات في R باستخدام حزمة dplyr
يوفر R حزمة بسيطة وسهلة الاستخدام تسمى dplyr لمعالجة البيانات. تحتوي الحزمة على بعض الأساليب المضمنة للمعالجة واستكشاف البيانات وتحويلها. دعونا نتحقق من بعض أهم وظائف هذه الحزمة:
تحديد()
تعد طريقة select () إحدى الوظائف الأساسية لمعالجة البيانات في R. تُستخدم هذه الطريقة لتحديد الأعمدة في R. باستخدام هذا ، يمكنك تحديد البيانات كما هو الحال مع اسم العمود الخاص بها. يمكن تحديد الأعمدة بناءً على شروط معينة. لنفترض أننا نريد تحديد العمود الثالث والرابع لإطار البيانات المسمى myData ، سيكون الرمز :
حدد (myData، 3: 4)
منقي()
تُستخدم هذه الطريقة لتصفية صفوف مجموعة البيانات التي تتطابق مع معايير محددة. يمكن أن يعمل مثل select () ، يمكنك تمرير إطار البيانات أولاً ثم شرط مفصول باستخدام فاصلة.
على سبيل المثال ، إذا كنت تريد تصفية الأعمدة التي تحتوي على سيارات حمراء اللون في مجموعة بيانات ، فعليك كتابة:
مرشح (سيارات ، اللون == "أحمر")
نتيجة لذلك ، سيتم عرض الصفوف المتطابقة.
متحور ()
يمكنك استخدام طريقة mutate () لإنشاء أعمدة جديدة في مجموعة بيانات مع الاحتفاظ بالأعمدة القديمة. يمكن إنشاء هذه الأعمدة بتحديد شرط. علي سبيل المثال،
متحور (mtcars ، mtcars_new_col = ميلا في الغالون / سيل)
في هذا الأمر ، في مجموعة بيانات mtcars ، يتم إنشاء عمود جديد mtcars_new_col يحتوي على قيم عمود mpg مقسومًا على عمود الأسطوانة.
يرتب()
يستخدم هذا لفرز الصفوف بترتيب تصاعدي أو تنازلي ، باستخدام متغير واحد أو أكثر. بدلاً من تطبيق طريقة desc () ، يمكنك إضافة رمز ناقص (-) قبل متغير الفرز. سيشير هذا إلى الترتيب التنازلي للفرز. علي سبيل المثال،
ترتيب (my_dataset، -Sepal.Length)
مجموعة من()
تُستخدم طريقة group_by () لتجميع الملاحظات في مجموعة بيانات بواسطة متغير واحد أو عدة متغيرات.
لخص()
تُعد وظيفة التلخيص () مفيدة في تحديد رؤى البيانات مثل المتوسط والوسيط والوضع. يتم استخدامه مع البيانات المجمعة التي تم إنشاؤها بواسطة طريقة أخرى group_by. التلخيص () يساعد على تقليل القيم المتعددة إلى قيم مفردة.
دمج()
تقوم طريقة الدمج () بتجميع أو دمج مجموعات البيانات معًا. هذا مفيد لتجميع مصادر متعددة لبيانات الإدخال معًا.
توفر لك الطريقة 4 طرق لدمج مجموعات البيانات . هم مذكورون أدناه:
- الصلة الطبيعية - تُستخدم للاحتفاظ بالصفوف التي تطابق الشرط المحدد داخل إطارات البيانات
- صلة خارجية كاملة - هذا يدمج ويخزن كل الصفوف من كلا إطاري البيانات
- الصلة الخارجية اليسرى - يخزن هذا كل صفوف إطار البيانات A وتلك الموجودة في B المطابقة
- الصلة الخارجية اليمنى - يخزن هذا كل صفوف إطار البيانات B وتلك الموجودة في A المطابقة
rename_if ()
هذه وظيفة يمكنك استخدامها لإعادة تسمية أعمدة إطار البيانات عند استيفاء الشرط المحدد.
إعادة تسمية جميع()
يستخدم هذا لإعادة تسمية جميع أعمدة إطار البيانات دون تحديد أي شرط.
احصل على دورات في علوم البيانات من أفضل الجامعات في العالم. انضم إلى برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.
مشغل الأنابيب
مشغل الأنابيب متاح في حزم مثل magrittr و dplyr لتبسيط الكود الإجمالي الخاص بك. يتيح لك المشغل الجمع بين وظائف متعددة معًا. يُشار إليه بالرمز٪>٪ ، ويمكن استخدامه مع الطرق الشائعة مثل تلخيص () ، عامل تصفية () ، تحديد () و group_by () أثناء معالجة البيانات في R.
إلى جانب dplyr ، هناك العديد من الحزم الأخرى في CRAN لمعالجة البيانات في R. في الواقع ، ستجد أكثر من 7000 حزمة لتقليل الترميز وأيضًا أخطائك. تم إنشاء العديد من هذه الحزم بواسطة مطورين خبراء ، لذا فأنت في أيد أمينة. وتشمل هذه:
- جدول البيانات
- لوبريديت
- ggplot2
- readr
- إعادة تشكيل 2
- المد
خاتمة
إذا كنت مبتدئًا في معالجة البيانات في R ، فيمكنك البحث عن الوظائف الأساسية المضمنة المتوفرة في R. وتشمل هذه الطرق مثل () ، ضمن () ، مكررة () ، قص () ، جدول () ، عينة () وفرز (). لكنها تستغرق وقتًا طويلاً وتتكرر. إنه ليس خيارًا فعالاً للغاية.
وبالتالي ، فإن أفضل طريقة للمضي قدمًا هي استخدام العدد الهائل من الحزم في CRAN مثل dplyr. هذه مفيدة للغاية وتجعل برامجك أكثر كفاءة.
ما الحزمة المفيدة لمعالجة البيانات في R؟
تُستخدم عملية معالجة البيانات لتعديل البيانات المتاحة وتسهيل قراءتها بالإضافة إلى جعلها أكثر تنظيماً. غالبًا ما يكون هناك الكثير من الأخطاء وعدم الدقة من قبل الأجهزة التي جمعت البيانات. يسمح لك التلاعب بالبيانات بإزالة تلك المعلومات غير الدقيقة وتقديم بيانات أكثر دقة.
هناك العديد من الطرق لأداء معالجة البيانات في R ، مثل استخدام حزم مثل ggplot2 و readr و dplyr وما إلى ذلك وباستخدام وظائف Base R مثل within () ، مع () ، وما إلى ذلك ، ومع ذلك ، تعتبر حزمة dplyr شديدة الأهمية مفيدة لمعالجة البيانات في R. تتكون هذه الحزمة من وظائف مختلفة تم إنشاؤها خصيصًا لمعالجة البيانات ، وتسمح بمعالجة البيانات بشكل أسرع مقارنة بالطرق والحزم الأخرى.
ما هو الغرض من حزمة dplyr في R؟
من المعروف أن حزمة dplyr هي الأفضل لمعالجة البيانات في R بأقصى قدر من الكفاءة. في وقت سابق ، كانت هناك حزمة تسمى plyr ، وقد تم تكرارها لتشكيل dplyr. الآن ، يركز dplyr تمامًا على إطارات البيانات. هذا هو السبب في أنه أسرع بكثير ، ويحتوي على واجهة برمجة تطبيقات أفضل ومتسقة ، كما أنه سهل الاستخدام.
تعمل حزمة dplyr على تحقيق أقصى استفادة من البيانات المتاحة مع أداء محسّن مقارنة بحزم معالجة البيانات الأخرى في R.
كيف يمكنك التلاعب بالبيانات؟
من أجل إجراء معالجة البيانات ، تحتاج إلى تنفيذ خطوات معينة بترتيب عام. اتبع الخطوات التالية:
1. أولاً ، ستحتاج إلى قاعدة بيانات تم إنشاؤها من مصادر البيانات.
2. بعد ذلك ، تحتاج إلى تنظيف البيانات المتاحة وإعادة ترتيبها وإعادة هيكلتها من خلال معالجة البيانات.
3. الآن ، عليك تطوير قاعدة بيانات ستعمل عليها.
4. هنا ، سوف تكون قادرًا على دمج وحذف وتعديل المعلومات المتاحة.
5. أخيرًا ، قم بتحليل البيانات المتاحة واستخلص منها معلومات مفيدة.