Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

العمليات على المتجهات

جزء من قسم الأساسيات في رحلة R على Coddy. الدرس 59 من 78.

تتمثل إحدى أقوى ميزات R في القدرة على إجراء عمليات على متجهات كاملة دفعةً واحدة، من دون الحاجة إلى التكرار عبر كل element. وهذا يجعل شفرتك أكثر نظافة وكفاءة.

عندما تطبّق عاملًا حسابيًا على متجه، ينفّذ R العملية على كل عنصر:

prices <- c(10, 25, 15, 30)
discounted <- prices * 0.9
print(discounted)

الناتج:

[1]  9.0 22.5 13.5 27.0

يمكنك أيضًا إجراء عمليات بين متجهين لهما الطول نفسه. يطابق R العناصر المتناظرة:

quantities <- c(2, 1, 4, 3)
prices <- c(10, 25, 15, 30)
totals <- quantities * prices
print(totals)

الناتج:

[1] 20 25 60 90

يوفّر R دوال مضمّنة مفيدة لحسابات المتجهات الشائعة مثل sum() وmean() وmin() وmax():

scores <- c(85, 92, 78, 95, 88)
print(sum(scores))
print(mean(scores))
print(min(scores))
print(max(scores))

الناتج:

[1] 438
[1] 87.6
[1] 78
[1] 95
challenge icon

التحدي

سهل

تم تزويدك بالمتجهات التالية:

hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)

نفّذ العمليات التالية واطبع كل نتيجة:

  1. احسب الأرباح اليومية لكل يوم عن طريق ضرب hours_worked في hourly_rate (ضرب عنصر-بعنصر). اطبع هذا المتجه.
  2. طبّق مكافأة بنسبة 10% على جميع الأرباح اليومية (اضرب في 1.1). اطبع متجه الأرباح المحدّث.
  3. اطبع إجمالي الأرباح للأسبوع باستخدام sum()
  4. اطبع متوسط الأرباح اليومية باستخدام mean()
  5. اطبع أعلى أرباح ليوم واحد باستخدام max()
  6. اطبع أقل أرباح ليوم واحد باستخدام min()

يجب أن يكون ناتجك كما يلي:

[1] 120 140 162 132 136
[1] 132.0 154.0 178.2 145.2 149.6
[1] 759
[1] 151.8
[1] 178.2
[1] 132

جرّب بنفسك

# المتجهات المعطاة
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)

# TODO: اكتب الكود الخاص بك أدناه

# 1. احسب الأرباح اليومية (الضرب عنصرًا بعنصر)

# 2. طبّق مكافأة 10% على الأرباح اليومية

# 3. اطبع إجمالي الأرباح للأسبوع باستخدام sum()

# 4. اطبع متوسط الأرباح اليومية باستخدام mean()

# 5. اطبع أعلى أرباح ليوم واحد باستخدام max()

# 6. اطبع أدنى أرباح ليوم واحد باستخدام min()
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم R عبر الإنترنت