صفائف R
المصفوفات
مقارنة بالمصفوفات ، يمكن أن تحتوي المصفوفات على أكثر من بعدين.
يمكننا استخدام array()
الدالة لإنشاء مصفوفة ، dim
والمعلمة لتحديد الأبعاد:
مثال
# An array with one dimension with values ranging from 1 to 24
thisarray <-
c(1:24)
thisarray
# An array with more than one dimension
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray
شرح المثال
في المثال أعلاه نقوم بإنشاء مصفوفة بالقيم من 1 إلى 24.
كيف dim=c(4,3,2)
يعمل؟
يحدد الرقم الأول والثاني في القوس عدد الصفوف والأعمدة.
الرقم الأخير في القوس يحدد عدد الأبعاد التي نريدها.
ملاحظة: يمكن أن تحتوي المصفوفات على نوع بيانات واحد فقط.
عناصر صفيف الوصول
يمكنك الوصول إلى عناصر المصفوفة بالإشارة إلى موضع الفهرس. يمكنك استخدام []
الأقواس للوصول إلى العناصر المطلوبة من المصفوفة:
مثال
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[2, 3, 2]
تكون الصيغة كما يلي: صفيف [موضع الصف ، موضع العمود ، مستوى المصفوفة]
يمكنك أيضًا الوصول إلى الصف أو العمود بالكامل من مصفوفة في مصفوفة ، باستخدام c()
الوظيفة:
مثال
thisarray <- c(1:24)
# Access all the items from the first row from
matrix one
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[c(1),,1]
# Access all the items from the first column
from matrix one
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[,c(1),1]
تعني الفاصلة (،) قبل c () أننا نريد الوصول إلى العمود.
تعني الفاصلة (،) بعد c () أننا نريد الوصول إلى الصف.
تحقق مما إذا كان العنصر موجودًا
لمعرفة ما إذا كان عنصر محدد موجودًا في مصفوفة ، استخدم %in%
عامل التشغيل:
مثال
تحقق مما إذا كانت القيمة "2" موجودة في المصفوفة:
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
2 %in% multiarray
كمية الصفوف والأعمدة
استخدم dim()
الدالة لإيجاد عدد الصفوف والأعمدة في المصفوفة:
مثال
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
dim(multiarray)
طول الصفيف
استخدم length()
الدالة للعثور على بُعد المصفوفة:
مثال
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
length(multiarray)
حلقة من خلال مصفوفة
يمكنك إجراء حلقة عبر عناصر المصفوفة باستخدام for
حلقة:
مثال
thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))
for(x in multiarray){
print(x)
}