كيفية استخدام دالة الانتشار في لغة r (مع أمثلة)


يمكن استخدام وظيفة الانتشار () في حزمة Tidyr “لتوزيع” زوج القيمة الرئيسية عبر أعمدة متعددة.

تستخدم هذه الوظيفة بناء الجملة الأساسي التالي:

الانتشار (البيانات، القيمة الرئيسية)

ذهب:

  • البيانات : اسم إطار البيانات
  • المفتاح : العمود الذي ستصبح قيمه أسماء متغيرة
  • القيمة : العمود الذي سيتم فيه ملء القيم ضمن المتغيرات الجديدة التي تم إنشاؤها من المفتاح

توضح الأمثلة التالية كيفية استخدام هذه الوظيفة عمليًا.

مثال 1: توزيع القيم على عمودين

لنفترض أن لدينا إطار البيانات التالي في R:

 #create data frame
df <- data. frame (player= rep (c(' A ', ' B '), each= 4 ),
                 year= rep (c(1, 1, 2, 2), times= 2 ),
                 stat= rep (c(' points ', ' assists '), times= 4 ),
                 amount=c(14, 6, 18, 7, 22, 9, 38, 4))

#view data frame
df

  player year stat amount
1 A 1 points 14
2 A 1 assists 6
3 A 2 points 18
4 A 2 assists 7
5 B 1 points 22
6 B 1 assists 9
7 B 2 points 38
8 B 2 assists 4

يمكننا استخدام الدالة Spread() لتحويل قيم أعمدة الإحصائيات إلى أعمدة خاصة بها:

 library (tidyr)

#spread stat column across multiple columns
spread(df, key=stat, value=amount)

  player year assists points
1 to 1 6 14
2 to 2 7 18
3 B 1 9 22
4 B 2 4 38

مثال 2: توزيع القيم على أكثر من عمودين

لنفترض أن لدينا إطار البيانات التالي في R:

 #create data frame
df2 <- data. frame (player= rep (c(' A '), times= 8 ),
                 year= rep (c(1, 2), each= 4 ),
                 stat= rep (c(' points ', ' assists ', ' steals ', ' blocks '), times= 2 ),
                 amount=c(14, 6, 2, 1, 29, 9, 3, 4))

#view data frame
df2

  player year stat amount
1 A 1 points 14
2 A 1 assists 6
3 A 1 steals 2
4 A 1 blocks 1
5 A 2 points 29
6 A 2 assists 9
7 A 2 steals 3
8 A 2 blocks 4

يمكننا استخدام دالة Spread() لتحويل القيم الأربع الفريدة في عمود الإحصائيات إلى أربعة أعمدة جديدة:

 library (tidyr)

#spread stat column across multiple columns
spread(df2, key=stat, value=amount)

  player year assists blocks points steals
1 A 1 6 1 14 2
2 A 2 9 4 29 3

مصادر إضافية

الهدف من حزمة Tidyr هو إنشاء بيانات “مرتبة” تتميز بالخصائص التالية:

  • كل عمود هو متغير.
  • كل سطر هو ملاحظة.
  • كل خلية لها قيمة فريدة.

تستخدم حزمة Tidyr أربع وظائف رئيسية لإنشاء البيانات المطلوبة:

1. وظيفة الانتشار () .

2. وظيفة التجميع () .

3. الدالةالمنفصلة () .

4. وظيفة الوحدة () .

إذا أتقنت هذه الوظائف الأربع، فستتمكن من إنشاء بيانات “مرتبة” من أي إطار بيانات.

Add a Comment

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