كيفية إضافة عمود إذا لم يكن موجودًا في r


يمكنك استخدام الوظيفة المخصصة التالية لإضافة عمود واحد أو أكثر إلى إطار بيانات في R إذا لم تكن موجودة بالفعل:

 add_cols <- function (df, cols) {
  add <- cols[!cols %in% names(df)]
  if (length(add) != 0) df[add] <- NA
  return (df)
}

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: أضف عمودًا إذا لم يكن موجودًا في R

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo'),
                 dots=c(18, 22, 19, 14, 14, 11, 20))

#view data frame
df

  team position points
1 A Gu 18
2 A Fo 22
3 A Fo 19
4 A Fo 14
5 B Gu 14
6 B Gu 11
7 B Fo 20

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

  • نقاط
  • يساعد
  • مستبعد

يمكننا استخدام دالة مخصصة تسمى add_cols للقيام بذلك:

 #define custom function to add columns to data frame if they do not exist
add_cols <- function (df, cols) {
  add <- cols[!cols %in% names(df)]
  if (length(add) !=0 ) df[add] <- NA
  return (df)
}

#add three columns if they don't already exist
df <- add_cols(df, c(' points ', ' assists ', ' rebounds '))

#view updated data frame
df

  team position points assists rebounds
1 A Gu 18 NA NA
2 A Fo 22 NA NA
3 A Fo 19 NA NA
4 A Fo 14 NA NA
5 B Gu 14 NA NA
6 B Gu 11 NA NA
7 B Fo 20 NA NA

لاحظ أنه تمت إضافة أعمدة التمريرات الحاسمة والمرتدات إلى إطار البيانات بينما لم يتم إضافة عمود النقاط لأنه موجود بالفعل.

لاحظ أيضًا أن R يملأ ببساطة كل قيمة في الأعمدة الجديدة بقيم NA.

مصادر إضافية

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

كيفية إضافة عمود إلى إطار البيانات بناءً على أعمدة أخرى في R
كيفية إضافة عمود فهرس (معرف رقمي) إلى إطار بيانات في R
كيفية إضافة عمود فارغ إلى إطار البيانات في R

Add a Comment

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