كيفية تحويل إطار البيانات إلى مصفوفة في لغة r (مع أمثلة)


يمكنك استخدام أي من الطرق التالية لتحويل إطار البيانات إلى مصفوفة في R:

الطريقة الأولى: تحويل Dataframe من الأعمدة الرقمية إلى مصفوفة

 mat <- as. matrix (df)

الطريقة الثانية: تحويل إطار البيانات الذي يحتوي على أحرف/عوامل إلى مصفوفة

 mat <- data. matrix (df)

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

توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا.

الطريقة الأولى: تحويل Dataframe من الأعمدة الرقمية إلى مصفوفة

لنفترض أن لدينا إطار البيانات التالي في R الذي يحتوي على أعمدة رقمية فقط:

 #create data frame
df <- data. frame (points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#view data frame
df

  points assists rebounds
1 99 33 30
2 90 28 28
3 86 31 24
4 88 39 24
5 95 34 28

يمكننا استخدام الدالة as.matrix() لتحويل إطار البيانات هذا بسرعة إلى مصفوفة رقمية:

 #convert data frame to matrix
mat <- as. matrix (df)

#view matrix
mast

     points assists rebounds
[1,] 99 33 30
[2,] 90 28 28
[3,] 86 31 24
[4,] 88 39 24
[5,] 95 34 28

#view class of mat
class(mat)

[1] "matrix" "array"

باستخدام الدالة class() ، نؤكد أن الكائن الجديد هو بالفعل مصفوفة.

الطريقة الثانية: تحويل إطار البيانات الذي يحتوي على أحرف/عوامل إلى مصفوفة

لنفترض أن لدينا إطار البيانات التالي في R الذي يحتوي على أعمدة الأحرف والأعمدة الرقمية:

 #create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34))

#view data frame
df

  team points assists
1 A 99 33
2 A 90 28
3 B 86 31
4 B 88 39
5 C 95 34

يمكننا استخدام الدالة data.matrix() لتحويل إطار البيانات هذا بسرعة إلى مصفوفة رقمية:

 #convert data frame to matrix
mat <- data. matrix (df)

#view matrix
mast

     team points assists
[1,] 1 99 33
[2,] 1 90 28
[3,] 2 86 31
[4,] 2 88 39
[5,] 3 95 34

#view class of mat
class(mat)

[1] "matrix" "array"

باستخدام الدالة class() ، نؤكد أن الكائن الجديد هو بالفعل مصفوفة.

يمكننا أيضًا كتابة ما يلي:

 ?data.matrix

الذي يخبرنا:

 Description:
     Return the matrix obtained by converting all the variables in a
     data frame to numeric mode and then binding them together as the
     columns of a matrix. Factors and ordered factors are replaced by
     their internal codes.

وهذا ما يفسر سبب تحويل أسماء الفريق A، A، B، B، C إلى القيم 1، 1، 2، 2، 3.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ العمليات الشائعة الأخرى في R:

كيفية تحويل عمود إطار البيانات إلى ناقل في R
كيفية تحويل المصفوفة إلى متجه في R
كيفية تحويل جدول إلى إطار بيانات في R

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *