كيفية إزالة الصفوف المكررة في لغة r (مع أمثلة)
يمكنك استخدام إحدى الطريقتين لإزالة الصفوف المكررة من إطار البيانات في R:
الطريقة الأولى: استخدم Base R
#remove duplicate rows across entire data frame df[ ! duplicated(df), ] #remove duplicate rows across specific columns of data frame df[ ! duplicated(df[c(' var1 ')]), ]
الطريقة الثانية: استخدم dplyr
#remove duplicate rows across entire data frame df %>% distinct(.keep_all = TRUE ) #remove duplicate rows across specific columns of data frame df %>% distinct(var1, .keep_all = TRUE )
توضح الأمثلة التالية كيفية استخدام بناء الجملة هذا عمليًا مع إطار البيانات التالي:
#define data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'), position=c('Guard', 'Guard', 'Forward', 'Guard', 'Center', 'Center')) #view data frame df team position 1A Guard 2 A Guard 3 A Forward 4 B Guard 5B Center 6B Center
مثال 1: إزالة الصفوف المكررة باستخدام Base R
يوضح التعليمة البرمجية التالية كيفية إزالة الصفوف المكررة من إطار البيانات باستخدام وظائف R الأساسية:
#remove duplicate rows from data frame
df[ ! duplicated(df), ]
team position
1A Guard
3 A Forward
4 B Guard
5B Center
يوضح التعليمة البرمجية التالية كيفية إزالة الصفوف المكررة من أعمدة محددة في إطار بيانات باستخدام الأساس R:
#remove rows where there are duplicates in the 'team' column
df[ ! duplicated(df[c(' team ')]), ]
team position
1A Guard
4 B Guard
المثال 2: إزالة الصفوف المكررة باستخدام dplyr
يوضح التعليمة البرمجية التالية كيفية إزالة الصفوف المكررة من إطار البيانات باستخدام الدالة المميزة () من الحزمة dplyr :
library (dplyr) #remove duplicate rows from data frame df %>% distinct(.keep_all = TRUE ) team position 1A Guard 2 A Forward 3 B Guard 4B Center
لاحظ أن الوسيطة .keep_all تطلب من R الاحتفاظ بجميع الأعمدة في إطار البيانات الأصلي.
يوضح التعليمة البرمجية التالية كيفية استخدام الدالة المميزة () لإزالة الصفوف المكررة من أعمدة محددة في إطار البيانات:
library (dplyr) #remove duplicate rows from data frame df %>% distinct(team, .keep_all = TRUE ) team position 1A Guard 2 B Guard
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ وظائف شائعة أخرى في R:
كيفية حذف الصفوف في R بناءً على الحالة
كيفية حذف الصفوف مع NA في عمود معين في R