📜  计算 R 中的唯一值

📅  最后修改于: 2022-05-13 01:55:50.246000             🧑  作者: Mango

计算 R 中的唯一值

在本文中,我们将看到如何在 R 编程语言中计算唯一值。

例子:

方法一:使用length(unique())函数

与列表一起提供的 Unique()函数将仅给出其中唯一的。后来的 length()函数可以计算频率。



句法:

示例 1:

R
# Sample vector
v<-c(1,2,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Unique values")
  
# count unique elements
length(unique(v))


R
# Sample vector
v<-c(NA,2,NA,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Unique values")
  
# count unique elements
length(unique(v))


R
# Sample dataframe
df<-data.frame(c1=c(NA,2,NA,3,2,4),c2=c(5,1,6,6,6,6))
df
  
print("Unique values")
  
# count unique elements
length(unique(df$c1))


R
# Sample matrix
mat<-matrix(c(NA,2,NA,3,2,4,5,1,6,6,6,6),ncol=3)
mat
  
print("Unique values")
  
# count unique elements
length(unique(mat))


R
v <- c(5,NA,NA,2,3,4,5,3,7,8,9,5)
v
  
print("Count of unique values")
table(v)


R
# Sample dataframe
df<-data.frame(c1=c(NA,2,NA,3,2,4),c2=c(5,1,6,6,6,6))
df
  
print("Unique values")
  
# count unique elements
table(df$c2)


R
# Sample matrix
mat<-matrix(c(NA,2,NA,3,2,4,5,1,6,6,6,6),ncol=3)
mat
  
print("Unique values")
  
# count unique elements
table(mat)


R
# Sample vector
v<-c(1,2,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Count of Unique values")
  
as.data.frame(table(v))


R
# Sample vector
v<-c(1,2,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Count of Unique values using aggregate() function")
  
aggregate(data.frame(count = v), list(value = v), length)


输出:

对于具有多个 NA 值的列表,它将被视为 1 个单独的实体。

示例 2:

电阻

# Sample vector
v<-c(NA,2,NA,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Unique values")
  
# count unique elements
length(unique(v))

输出:

示例 3:

电阻

# Sample dataframe
df<-data.frame(c1=c(NA,2,NA,3,2,4),c2=c(5,1,6,6,6,6))
df
  
print("Unique values")
  
# count unique elements
length(unique(df$c1))

输出:



此方法不适用于矩阵

示例 4:

电阻

# Sample matrix
mat<-matrix(c(NA,2,NA,3,2,4,5,1,6,6,6,6),ncol=3)
mat
  
print("Unique values")
  
# count unique elements
length(unique(mat))

输出:

方法二:使用table()函数

我们将使用 table()函数来获取唯一值的计数。 R 语言中的table()函数用于以表格的形式创建具有变量名称和频率的数据的分类表示。

语法

示例 1:

电阻

v <- c(5,NA,NA,2,3,4,5,3,7,8,9,5)
v
  
print("Count of unique values")
table(v)

输出:

示例 2:

电阻

# Sample dataframe
df<-data.frame(c1=c(NA,2,NA,3,2,4),c2=c(5,1,6,6,6,6))
df
  
print("Unique values")
  
# count unique elements
table(df$c2)

输出:

示例 3:

电阻

# Sample matrix
mat<-matrix(c(NA,2,NA,3,2,4,5,1,6,6,6,6),ncol=3)
mat
  
print("Unique values")
  
# count unique elements
table(mat)

输出:

方法 3:使用as.data.frame()函数将输出转换为 Dataframe

此方法将返回每个元素的单独频率。

句法:

例子:

电阻

# Sample vector
v<-c(1,2,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Count of Unique values")
  
as.data.frame(table(v))

输出:

方法四:使用aggregate()函数

在应用特定函数后, aggregate()函数将始终返回一个包含来自输入数据帧的所有唯一值的数据帧。我们只能申请一个聚合函数中的单一函数

例子:

电阻

# Sample vector
v<-c(1,2,3,2,4,5,1,6,8,9,8,6,6,6,6)
v
  
print("Count of Unique values using aggregate() function")
  
aggregate(data.frame(count = v), list(value = v), length)

输出: