كيفية حساب القيم الفريدة في عمود في r


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

الطريقة الأولى: استخدم Base R

 length(unique(df$my_column))

الطريقة الثانية: استخدم dplyr

 library (dplyr)

n_distinct(df$my_column)

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'C', 'C', 'D'),
                 points=c(10, 13, 14, 14, 18, 19, 20, 20, 22))

#view data frame
df

  team points
1 to 10
2 to 13
3 to 14
4 to 14
5 B 18
6 B 19
7 C 20
8 C 20
9 D 22

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

يوضح الكود التالي كيفية حساب عدد القيم الفريدة في عمود نقطة إطار البيانات باستخدام وظائف R الأساسية:

 #count unique values in points column
length(unique(df$points))

[1] 7

هناك 7 قيم فريدة في عمود النقاط .

لحساب عدد القيم الفريدة في كل عمود من إطار البيانات، يمكننا استخدام الدالة sapply() :

 #count unique values in each column
sapply(df, function (x) length(unique(x)))

  team points 
     4 7

ومن النتيجة يمكننا أن نرى:

  • هناك 7 قيم فريدة في عمود النقاط .
  • هناك 4 قيم فريدة في عمود الفريق .

الطريقة الثانية: حساب القيم الفريدة في العمود باستخدام dplyr

يوضح الكود التالي كيفية حساب عدد القيم المميزة في عمود النقاط باستخدام الدالة n_distinct() من الحزمة dplyr:

 library (dplyr)

#count unique values in points column
n_distinct(df$points)

[1] 7

هناك 7 قيم فريدة في عمود النقاط .

لحساب عدد القيم الفريدة في كل عمود من إطار البيانات، يمكننا استخدام الدالة sapply() :

 library (dplyr)

#count unique values in each column
sapply(df, function (x) n_distinct(x))

  team points 
     4 7

ومن النتيجة يمكننا أن نرى:

  • هناك 7 قيم فريدة في عمود النقاط .
  • هناك 4 قيم فريدة في عمود الفريق .

لاحظ أن هذه النتائج تتطابق مع نتائج طريقة R الأساسية.

مصادر إضافية

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

كيفية حساب التكرارات في R
كيفية حساب القيم الفريدة حسب المجموعة في R
كيفية حساب عدد قيم NA في كل عمود في R

Add a Comment

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