عوامل R


عوامل

تستخدم العوامل لتصنيف البيانات. أمثلة على العوامل هي:

  • الديموغرافيا: ذكر / أنثى
  • الموسيقى: روك ، بوب ، كلاسيك ، جاز
  • التدريب: القوة والقدرة على التحمل

لإنشاء عامل ، استخدم factor()الدالة وأضف المتجه كوسيطة:

مثال

# Create a factor
music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

# Print the factor
music_genre

نتيجة:

[1] Jazz    Rock    Classic Classic Pop     Jazz    Rock    Jazz
Levels: Classic Jazz Pop Rock

يمكنك أن ترى من المثال أعلاه أن العامل يحتوي على أربعة مستويات (فئات): كلاسيكي ، وجاز ، وبوب ، وروك.

لطباعة المستويات فقط ، استخدم levels()الوظيفة:

مثال

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

levels(music_genre)

نتيجة:

[1] "Classic" "Jazz"    "Pop"     "Rock"   

يمكنك أيضًا ضبط المستويات عن طريق إضافة levelsالوسيطة داخل factor()الوظيفة:

مثال

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"), levels = c("Classic", "Jazz", "Pop", "Rock", "Other"))

levels(music_genre)

نتيجة:

[1] "Classic" "Jazz"    "Pop"     "Rock"    "Other"

طول العامل

استخدم length()الوظيفة لمعرفة عدد العناصر الموجودة في العامل:

مثال

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

length(music_genre)

نتيجة:

[1] 8

عوامل الوصول

للوصول إلى العناصر في عامل ما ، يرجى الرجوع إلى رقم الفهرس باستخدام []الأقواس:

مثال

الوصول إلى العنصر الثالث:

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

music_genre[3]

نتيجة:

[1] Classic
Levels: Classic Jazz Pop Rock

تغيير قيمة البند

لتغيير قيمة عنصر معين ، راجع رقم الفهرس:

مثال

غيّر قيمة العنصر الثالث:

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

music_genre[3] <- "Pop"

music_genre[3]

نتيجة:

[1] Pop
Levels: Classic Jazz Pop Rock

لاحظ أنه لا يمكنك تغيير قيمة عنصر معين إذا لم تكن محددة بالفعل في العامل. سينتج عن المثال التالي خطأ:

مثال

محاولة تغيير قيمة العنصر الثالث ("كلاسيكي") إلى عنصر غير موجود / غير محدد مسبقًا ("Opera"):

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

music_genre[3] <- "Opera"

music_genre[3]

نتيجة:

Warning message:
In `[<-.factor`(`*tmp*`, 3, value = "Opera") :
  invalid factor level, NA generated

ومع ذلك ، إذا كنت قد حددتها بالفعل داخل levelsالوسيطة ، فستعمل:

مثال

غيّر قيمة العنصر الثالث:

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"), levels = c("Classic", "Jazz", "Pop", "Rock", "Opera"))

music_genre[3] <- "Opera"

music_genre[3]

نتيجة:

[1] Opera
Levels: Classic Jazz Pop Rock Opera