ج: كيفية استخدام pivot_longer() على كافة الأعمدة
يمكن استخدام الدالة Pivot_longer() لحزمة Tidyr في لغة R لتدوير كتلة من البيانات من تنسيق واسع إلى تنسيق طويل.
إذا كنت تريد استخدام هذه الوظيفة لتدوير كافة الأعمدة في إطار البيانات بتنسيق طويل، فيمكنك استخدام بناء الجملة التالي:
library (tidyr)
df_long <- pivot_longer(df, cols = everything())
لاحظ أن الوسيطة cols تحدد الأعمدة التي سيتم تدويرها، بينما تحدد الوسيطة everything() أننا نريد تدوير كل عمود.
يوضح المثال التالي كيفية استخدام هذه الوظيفة عمليًا.
ذات صلة: البيانات الطويلة أو الواسعة: ما الفرق؟
مثال: استخدم Pivot_longer() على كافة الأعمدة في R
لنفترض أن لدينا إطار البيانات التالي في R الذي يوضح عدد النقاط التي سجلها لاعبو كرة السلة المختلفون في ثلاث مباريات مختلفة:
#create data frame
df <- data. frame (game1=c(20, 30, 33, 19, 22, 24),
game2=c(12, 15, 19, 19, 20, 14),
game3=c(22, 29, 18, 12, 10, 11))
#view data frame
df
game1 game2 game3
1 20 12 22
2 30 15 29
3 33 19 18
4 19 19 12
5 22 20 10
6 24 14 11
إطار البيانات موجود حاليًا بتنسيق واسع.
ومع ذلك، لنفترض أننا نريد تدوير إطار البيانات إلى تنسيق طويل عن طريق تدوير جميع الأعمدة الثلاثة.
يمكننا استخدام بناء الجملة التالي للقيام بذلك:
library (tidyr)
#pivot all columns into long data frame
df_long <- pivot_longer(df, cols = everything())
#view long data frame
df_long
# A tibble: 18 x 2
name value
1 game1 20
2 game2 12
3 game3 22
4 game1 30
5 game2 15
6 game3 29
7 game1 33
8 game2 19
9 game3 18
10 game1 19
11 game2 19
12 game3 12
13 game1 22
14 game2 20
15 game3 10
16 game1 24
17 game2 14
18 game3 11
لاحظ أن أسماء الأعمدة game1 و game2 و game3 تُستخدم الآن كقيم في عمود جديد يسمى “name” ويتم وضع القيم من تلك الأعمدة الأصلية في عمود جديد يسمى “value”.
والنتيجة النهائية هي إطار بيانات طويل.
ملاحظة : يمكنك العثور على الوثائق الكاملة للدالة Pivot_longer() هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية استخدام الوظائف الشائعة الأخرى من حزمة Tidyr في R:
كيفية استخدام Pivot_wider() في R
كيفية استخدام وظيفة الانتشار في R
كيفية استخدام وظيفة التجميع في R
كيفية استخدام وظيفة منفصلة في R
كيفية استخدام الدالة Unite في R