تقييم وتحسين أداء الكود في R

تقييم وتحسين أداء الكود في R

يمكن أن يؤدي تحسين كود R إلى تحسين أداء البرامج النصية والبرامج R بشكل كبير ، مما يجعلها تعمل بكفاءة أكبر. هذا مهم بشكل خاص لمجموعات البيانات الكبيرة والمعقدة ، وكذلك للتطبيقات التي تحتاج إلى التشغيل في الوقت الحقيقي أو على أساس منتظم.

في هذا البرنامج التعليمي ، سنقوم بتقييم وتحسين أداء كود R باستخدام حزم R مختلفة ، مثل tidyverse و data.table. على سبيل المثال ، سنرى المدة التي يستغرقها RStudio لقراءة ملف CSV كبير باستخدام وظيفة read.csv () والحزمة tidyverse وحزمة data.table.

جدول المحتويات

تحسين الأداء في R

افتح RStudio. في البرنامج النصي R ، قم بتعيين امتداد الملف إلى متغير.

تحتاج إلى استخدام الدالة system.file () لتحديد المدة التي يستغرقها أداء وظيفة أو عملية. نظرًا لأننا نريد تقييم المدة التي يستغرقها فتح ملف ، فاكتب read.csv (df) في الوسيطة.

تقييم وتحسين أداء الكود في R

عند تشغيل التعليمات البرمجية ، ستعرض لك وحدة التحكم الوقت المستغرق لفتح الملف. يُظهر العمود المنقضي المدة التي استغرقتها وحدة المعالجة المركزية لتنفيذ رمز R. أظهرت النتائج أن RStudio استغرق 31.93 ثانية وهو مقدار كبير من الوقت. وقت التحميل هذا غير عملي إذا كنت تعمل دائمًا مع مجموعات بيانات كبيرة.

تقييم وتحسين أداء الكود في R

تتمثل إحدى الطرق التي يمكنك من خلالها تحسين أداء رمز R الخاص بك في استخدام الحزمة tidyverse . يؤدي القيام بذلك إلى تقليل الوقت من 30 إلى 5 ثوانٍ.

لاحظ أنه من أجل قراءة الملف ، تحتاج إلى استخدام وظيفة read_csv () .

تقييم وتحسين أداء الكود في R

تعمل حزمة tidyverse على تحسين وقت التحميل في R من خلال استخدام حزمة readr ، والتي توفر مجموعة من الوظائف السريعة والفعالة لقراءة البيانات وكتابتها. توفر حزمة readr وظائف مثل read_csv () و read_table () التي يمكنها قراءة مجموعات البيانات الكبيرة بسرعة وكفاءة.

طريقة أخرى للتحسين في R تستخدم حزمة data.table . هذا مجاني للتنزيل في الإنترنت.

تعد حزمة data.table في R أداة قوية وفعالة للعمل مع مجموعات البيانات الكبيرة والمعقدة. يوفر نسخة محسّنة من كائن data.frame ، وهو هيكل بيانات أساسي في R. الميزة الرئيسية لـ data.table هي الأداء العالي واستخدام الذاكرة المنخفض عند العمل مع مجموعات البيانات الكبيرة.

لاحظ أنه عند استخدام هذه الحزمة ، تحتاج إلى كتابة دالة fread () بدلاً من read.csv (). عند تشغيل هذا مع التعليمات البرمجية الخاصة بك ، يمكنك أن ترى أنه تم تقليل وقت التحميل إلى 2.25 ثانية.

تقييم وتحسين أداء الكود في R

مقارنة حزم R باستخدام Microbenchmark

لمقارنة الأداء بين كل طريقة ، يمكنك استخدام وظيفة microbenchmark () .

وظيفة microbenchmark () في R هي أداة لقياس أداء كود R. يوفر واجهة بسيطة وسهلة الاستخدام لقياس وقت تنفيذ تعبيرات R.

الشيء الرائع في هذه الوظيفة هو أنك قادر على تعيين عدد المرات التي تتكرر فيها العملية. هذا يعطي نتائج أكثر دقة. يمكنك أيضًا تحديد ما إذا كانت النتائج متسقة.

تقييم وتحسين أداء الكود في R

إذا كنت تواجه مشكلة في قراءة ملف CSV في LuckyTemplates ، فيمكن لـ RStudio القيام بذلك نيابة عنك. هناك خيارات أخرى في R يمكنك استخدامها لتحسين أداء التعليمات البرمجية الخاصة بك. لكن data.table موصى به بشدة بسبب بساطته.

خاتمة

يعد تحسين كود R خطوة مهمة في ضمان تشغيل نصوص R بكفاءة. هناك العديد من التقنيات والأدوات التي يمكن استخدامها لتحسين كود R ، مثل استخدام الحزمة tidyverse لمعالجة البيانات ، واستخدام حزمة data.table لمجموعات البيانات الكبيرة ، واستخدام حزمة microbenchmark لقياس أداء كود R.

من المهم أيضًا أن تضع في اعتبارك ممارسات الترميز الجيدة مثل استخدام العمليات الموجهة بدلاً من الحلقات ، والاستفادة من الوظائف المضمنة بدلاً من كتابة ما يخصك ، وأن تضع في اعتبارك استخدام الذاكرة في التعليمات البرمجية الخاصة بك.

أتمنى لك كل خير،

جورج ماونت


ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

كيفية حفظ وتحميل ملف RDS في R.

كيفية حفظ وتحميل ملف RDS في R.

ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

في هذا البرنامج التعليمي للغة ترميز DAX ، تعرف على كيفية استخدام وظيفة الإنشاء وكيفية تغيير عنوان القياس ديناميكيًا.

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.

مقدمة لتصفية السياق في LuckyTemplates

مقدمة لتصفية السياق في LuckyTemplates

في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX ​​في توفير النتائج.

إعداد تقارير الأعمال باستخدام LuckyTemplates

إعداد تقارير الأعمال باستخدام LuckyTemplates

إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته