البرمجة R - دليل المبتدئين إلى لغة البرمجة R

تقدم لك هذه المدونة الخاصة ببرمجة R إلى R وتساعدك على فهم المفاهيم الأساسية المختلفة لبرمجة R بالتفصيل مع الأمثلة.

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

في هذه المدونة ، سوف نفهم المفاهيم الأساسية التالية لبرمجة R في التسلسل التالي:





  1. المتغيرات
  2. أنواع البيانات
  3. مشغلي البيانات
  4. عبارة شرطية
  5. الحلقات
  6. المهام

يمكنك مراجعة تسجيل الندوة عبر الويب الخاص بلغة البرمجة R حيث شرح مدرسنا الموضوعات بطريقة مفصلة مع أمثلة ستساعدك على فهم برمجة R بشكل أفضل.

R برمجة للمبتدئين | دروس لغة البرمجة R | إدوريكا



فلنتحرك للأمام ونلقي نظرة على المفهوم الأول لبرمجة R - المتغيرات.

برمجة R: المتغيرات

المتغيرات ليست سوى اسم لموقع ذاكرة يحتوي على قيمة. يمكن للمتغير في R تخزين القيم الرقمية والقيم المعقدة والكلمات والمصفوفات وحتى الجدول. مفاجأة ، أليس كذلك؟

متغير - برمجة R - Edureka

تين: خلقمن المتغيرات



توضح لنا الصورة أعلاه كيفية إنشاء المتغيرات وكيف يتم تخزينها في كتل ذاكرة مختلفة. في R ، لا يتعين علينا التصريح عن متغير قبل استخدامه ، على عكس لغات البرمجة الأخرى مثل Java و C و C ++ وما إلى ذلك.

دعونا نمضي قدمًا ونحاول فهم ما هو نوع البيانات وأنواع البيانات المختلفة المدعومة في R.

برمجة R: أنواع البيانات

في R ، لا يتم الإعلان عن المتغير نفسه من أي نوع بيانات ، ولكنه يحصل على نوع بيانات الكائن R المخصص له. لذلك تسمى R لغة مكتوبة ديناميكيًا ، مما يعني أنه يمكننا تغيير نوع بيانات من نفس المتغير مرارًا وتكرارًا عند استخدامه في برنامج.

تحدد أنواع البيانات نوع القيمة التي يمتلكها المتغير ونوع العمليات الحسابية أو العلائقية أو المنطقية التي يمكن تطبيقها عليها دون التسبب في خطأ. هناك العديد من أنواع البيانات في R ، ولكن فيما يلي الأنواع الأكثر استخدامًا:

دعونا الآن نناقش كل نوع من أنواع البيانات هذه على حدة ، بدءًا من المتجهات.

ثلاثة أبعاد

المتجهات هي كائنات بيانات R الأساسية وهناك ستة أنواع من المتجهات الذرية. فيما يلي النواقل الذرية الستة:

نوع الوظيفة في SQL

منطقي : يتم استخدامه لتخزين القيمة المنطقية مثل صحيح أو خاطئة .

رقمي : يتم استخدامه لتخزين كل من الأرقام الموجبة والسالبة بما في ذلك الأرقام الحقيقية.

على سبيل المثال: 25 ، 7.1145 ، 96547

عدد صحيح : يحتوي على جميع قيم الأعداد الصحيحة ، أي جميع الأعداد الصحيحة الموجبة والسالبة.

على سبيل المثال: 45.479 ، -856.479 ، 0

مركب : هذه على شكل x + yi ، حيث x و y رقميتان وتمثل i الجذر التربيعي لـ -1.

على سبيل المثال: 4 + 3i

حرف : يستخدم لتخزين إما حرف واحد أو مجموعة أحرف (كلمات) أو مجموعة كلمات معًا. يمكن تحديد الأحرف إما في علامات اقتباس مفردة أو علامات اقتباس مزدوجة.

على سبيل المثال: 'Edureka' ، 'R متعة التعلم'.

بشكل عام ، يتم تعريف المتجه وتهيئته بالطريقة التالية:

Vtr = ج (2 ، 5 ، 11 ، 24) أو Vtr<- c(2, 5, 11 , 24)

دعونا نمضي قدمًا ونفهم أنواع البيانات الأخرى في R.

قائمة

تتشابه القوائم تمامًا مع المتجهات ، لكن القوائم هي كائنات R التي يمكن أن تحتوي على عناصر من أنواع مختلفة مثل & ناقص الأرقام والسلاسل والمتجهات وقائمة أخرى بداخلها.

على سبيل المثال:

Vtr<- c('Hello', 'Hi','How are you doing') mylist <- list(Vtr, 22.5, 14965, TRUE) mylist 

انتاج:

[[1]] [1] 'مرحبًا' مرحبًا 'كيف هل تفعل '[[2]] [1] 22.5 [[3]] [1] 14965 [[4]] [1] صحيح

مصفوفة

المصفوفة هي كائن R حيث يتم ترتيب العناصر في تخطيط مستطيل ثنائي الأبعاد.

الصيغة الأساسية لإنشاء مصفوفة في R هي & ناقص

 المصفوفة (data، nrow، ncol، byrow، dimnames) 

أين:

  • البيانات هو متجه الإدخال الذي يصبح عناصر البيانات للمصفوفة.
  • الآن هو عدد الصفوف التي سيتم إنشاؤها.
  • ncol هو عدد الأعمدة التي سيتم إنشاؤها.
  • عن طريق هو دليل منطقي. إذا كانت TRUE ، فسيتم ترتيب عناصر متجه الإدخال حسب الصف.
  • خافت هي الأسماء المخصصة للصفوف والأعمدة.

مثال:

ميماتريكس<- matrix(c(1:25), nrow = 5, ncol = 5, byrow = TRUE) Mymatrix 

انتاج:

[، 1] [، 2] [، 3] [، 4] [، 5] [1،] 1 2 3 4 5 [2،] 6 7 8 9 10 [3،] 11 12 13 14 15 [4 ، ] 16 17 18 19 20 [5،] 21 22 23 24 25

مجموعة مصفوفة

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

الصيغة الأساسية لإنشاء مصفوفة في R هي & ناقص

 صفيف (بيانات ، خافت ، أسماء) 

أين:

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

مثال:

ميراي<- array( c(1:16), dim=(4,4,2)) Myarray 

انتاج:

واحد [، 1] [، 2] [، 3] [، 4] [1،] 1 5 9 13 [2،] 2 6 10 14 [3،] 3 7 11 15 [4،] 4 8 12 16 ، ، 2 [، 1] [، 2] [، 3] [، 4] [1،] 1 5 9 13 [2،] 2 6 10 14 [3،] 3 7 11 15 [4،] 4 8 12 16

إطار البيانات

إطار البيانات عبارة عن جدول أو بنية تشبه المصفوفة ثنائية الأبعاد حيث يحتوي كل عمود على قيم متغير واحد ويحتوي كل صف على مجموعة واحدة من القيمإلى عن علىكل عمود. فيما يلي بعض خصائص إطار البيانات التي يجب مراعاتها في كل مرة نعمل فيها معهم:

  • يجب ألا تكون أسماء الأعمدة فارغة.
  • يجب أن يحتوي كل عمود على نفس الكمية من عناصر البيانات.
  • يمكن أن تكون البيانات المخزنة في إطار البيانات رقمية أو عامل أو نوع حرف.
  • يجب أن تكون أسماء الصفوف فريدة.

مثال:

emp_id = c (100: 104) emp_name = c ('John'، 'Henry'، 'Adam'، 'Ron'، 'Gary') dept = c ('Sales'، 'Finance'، 'Marketing'، 'HR '،' R & D ') emp.data<- data.frame(emp_id, emp_name, dept) emp.data 

انتاج:

emp_id emp_name قسم 1100 جون سيلز 2 101 هنري المالية 3 102 آدم للتسويق 4103 رون HR 5104 غاري R & D

والآن بعد أن فهمنا أنواع البيانات الأساسية لـ R ، فقد حان الوقت للتعمق في R من خلال فهم مفاهيم مشغلي البيانات.

برمجة R: مشغلي البيانات

يوجد بشكل أساسي 4 مشغلي بيانات في R ، كما هو موضح أدناه:

وظيفة التحميل الزائد في ++ C

العمليات الحسابية : تساعدنا هذه العوامل في إجراء العمليات الحسابية الأساسية مثل الجمع والطرح والضرب ، إلخ.

تأمل المثال التالي:

num1 = 15 num2 = 20 num3 = 0 # إضافة num3 = num1 + num2 num3 #substraction num3 = num1 - num2 num3 # #exponent num1 = 5 num2 = 3 num3 = num1 ^ num2 num3 # قسمة أرضية num3 = num1٪ /٪ num2 num3

انتاج:

[1] 35 [خمسة عشر [1] 300 [1] 0.75 [1] 15 [1] 125 [أحد عشر

العوامل العلاقية : تساعدنا هذه العوامل في إجراء العمليات العلائقية مثل التحقق مما إذا كان المتغير أكبر من أو أقل من أو يساوي متغير آخر. دائمًا ما يكون ناتج العملية العلائقية قيمة منطقية.

تأمل الأمثلة التالية:

num1 = 15 num2 = 20 # يساوي إلى num3 = (num1 == num2) num3 # لا يساوي num3 = (num1! = num2) num3 # أقل من num3 = (num1 num2) num3 #less من يساوي num1 = 5 num2 = 20 عدد 3 = (عدد 1 = عدد 2) عدد 3

انتاج:

[1] خطأ [1] صحيح [1] صحيح [1] خطأ [1] صحيح [1] خطأ

مشغلي التخصيص: تُستخدم عوامل التشغيل هذه لتعيين قيم للمتغيرات في R. يمكن إجراء التخصيص باستخدام إما عامل التخصيص(<-) أو عامل التشغيل يساوي (=). يمكن تعيين قيمة المتغير بطريقتين ، التعيين الأيسر والتعيين الأيمن.

منطقيالعاملين: يقارن هذان العاملان الكيانين ويتم استخدامهما عادةً مع القيم المنطقية (المنطقية) مثل 'و' ، 'أو'و'ليس'.


برمجة R: جمل شرطية

  1. إذا البيان: تساعدك عبارة If في تقييم تعبير واحد كجزء من التدفق. لإجراء هذا التقييم ، تحتاج فقط إلى كتابة الكلمة الأساسية If متبوعة بالتعبير المراد تقييمه. سيعطي مخطط التدفق أدناه فكرة عن كيفية سيطرة عبارة If على تدفق الكود: ضع في اعتبارك المثال التالي:
عدد 1 = 10 عدد 2 = 20 إذا (عدد 1<=num2){ print('Num1 is less or equal to Num2') 

انتاج:

[1] 'Num1 أقل أو يساوي Num2'
  • بيان آخر إذا: تساعدك عبارة Else if في توسيع الفروع إلى التدفق الذي تم إنشاؤه بواسطة عبارة If وتمنحك الفرصة لتقييم شروط متعددة من خلال إنشاء فروع تدفق جديدة. سيعطيك التدفق أدناه فكرة عن كيفية قيام جملة else if بتفرع تدفق الكود:

    تأمل المثال التالي:

    Num1 = 5 Num2 = 20 if (Num1 Num2) {print ('Num2 أقل من Num1')} else if ('Num1 == Num2) {print (' Num1 و Num2 متساويان ')}

    انتاج:

    [1] 'Num1 أقل من Num2'

  • بيان آخر: يتم استخدام عبارة else عندما يتم فحص جميع التعبيرات الأخرى واكتشاف عدم صلاحيتها. ستكون هذه آخر جملة يتم تنفيذها كجزء من فرع If - Else if. سيعطيك التدفق أدناه فكرة أفضل عن كيفية تغيير تدفق الكود:

تأمل المثال التالي:

Num1 = 5 Num2 = 20 if (Num1 Num2) {print ('Num2 أقل من Num1')} else print ('Num1 و Num2 متساويان')}

انتاج:

[1] 'Num1 و Num2 متساويان'

برمجة R: حلقات

تسمح لنا تعليمة loop بتنفيذ عبارة أو مجموعة من العبارات عدة مرات. توجد ثلاثة أنواع رئيسية من الحلقات في R:

  1. كرر الحلقة : يكرر عبارة أو مجموعة من العبارات بينما الشرط المحدد هو TRUE. حلقة التكرار هي أفضل مثال على حلقة يتم التحكم فيها بالخروج حيث يتم تنفيذ الكود لأول مرة ثم يتم فحص الشرط لتحديد ما إذا كان يجب أن يكون عنصر التحكم داخل الحلقة أو الخروج منها. يوجد أدناه تدفق التحكم في حلقة تكرار:
    دعونا نلقي نظرة على المثال أدناه لفهم كيف يمكننا استخدام تكرار التكرار لإضافة عدد n حتى يصل المجموع إلى 100:

    x = 2 كرر {x = x ^ 2 اطبع (x) إذا (x> 100) {break}

    انتاج:

    [1] 4 [1] 16 [1] 256
  2. حائط اللوب : أنايساعد t على تكرار عبارة أو مجموعة من العبارات بينما يكون الشرط المعين صحيحًا. بينما تختلف الحلقة اختلافًا طفيفًا عند مقارنتها بحلقة التكرار ، فهي مثال على حلقة يتم التحكم فيها عن طريق الإدخال حيث يتم التحقق من الشرط أولاً وفقط إذا تبين أن الشرط صحيح ، يتم تسليم التحكم داخل الحلقة لتنفيذ الكود . يوجد أدناه تدفق التحكم في حلقة while:
    دعونا نلقي نظرة على المثال أدناه لإضافة مجموع المربعات للأرقام العشرة الأولى وفهم كيف تعمل حلقة while بشكل أفضل:

    عدد = 1 عمود = 0 بينما (عدد<=11){ sumn =(sumn+ (num^2) num = num+1 print(sumn) } 


    انتاج:

    [أحد عشر [خمسة عشر [1] 14 [1] 30 [1] 55 [1] 91 [1] 140 [1] 204 [1] 285 [1] 385 [1] 506
  3. لحلقة : يستخدم لتكرار عبارة أو مجموعة لعدد ثابت من المرات. على عكس التكرار والحلقة أثناء ، يتم استخدام الحلقة for في المواقف التي ندرك فيها عدد المرات التي يحتاج فيها الرمز للتنفيذ مسبقًا. إنها تشبه حلقة while حيث يتم التحقق من الشرط لأول مرة ثم يتم تنفيذ الكود المكتوب بالداخل فقط. لنرى تدفق التحكم في حلقة for الآن:

دعونا الآن نلقي نظرة على مثال حيث سنستخدم الحلقة for لطباعة أول 10 أرقام:

لـ (x في 1:10) {print (x)}

انتاج:

[أحد عشر [1] 2 [1] 3 [1] 4 [خمسة عشر [1] 6 [1] 7 [1] 8 [1] 9 [1] 10

برمجة R: الوظائف

الوظيفة عبارة عن كتلة من التعليمات البرمجية المنظمة القابلة لإعادة الاستخدام والتي تُستخدم لتنفيذ إجراء واحد ذي صلة. يوجد نوعان رئيسيان من الوظائف في R:

وظائف محددة مسبقا : هذه وظائف مدمجة يمكن أن يستخدمها المستخدم لإنجاز عمله سهلص. على سبيل المثال: meaن( خ) ، سشم( خ) ، sqrر ( x ) ، توبر( x ) ، إلخ.

تعريف المستخدم المهام: يتم إنشاء هذه الوظائف من قبل المستخدم لتلبية متطلبات محددة للمستخدم. ما يلي هو بناء الجملة لإنشاء وظيفة فيR:

 func  tion_name  <– وظيفة (arg_1 و arg_2 و hellip){ // جسم الوظيفة }

ضع في اعتبارك المثال التالي لدالة بسيطة لتوليد مجموع المربعاتمنرقمان:

مجموع مربع<- function(x,y) { x^2 + y^2 } sum_of_sqares(3,4) 
الإخراج: [1] 25

أتمنى أن تكون قد استمتعت بقراءة مدونة البرمجة R هذه. لقد قمنا بتغطية جميع أساسيات R في هذا البرنامج التعليمي ، حتى تتمكن من البدء في التدريب الآن. بعد مدونة البرمجة R هذه ، سأخرج بمزيد من المدونات على R for Analytics ، لذا ترقبوا ذلك.

الآن بعد أن فهمت أساسيات R ، تحقق من من Edureka ، وهي شركة تعليمية موثوقة عبر الإنترنت مع شبكة تضم أكثر من 250000 متعلم راضٍ منتشرين في جميع أنحاء العالم. ستساعدك تحليلات البيانات مع تدريب R من Edureka على اكتساب الخبرة في برمجة R ومعالجة البيانات وتحليل البيانات الاستكشافية وتصور البيانات واستخراج البيانات والانحدار وتحليل المشاعر واستخدام RStudio لدراسات الحالة الواقعية حول البيع بالتجزئة والوسائط الاجتماعية.

لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات في مدونة 'R Programming' وسنعاود الاتصال بك في أقرب وقت ممكن.