查找 R 数据框中每列的唯一值和缺失值的频率。

r programmingserver side programmingprogramming更新于 2025/4/7 12:07:17

要查找 R 数据框中每列的唯一值和缺失值的频率,我们可以使用 apply 函数和 table 函数,并将 useNA 参数设置为 always。

例如,如果我们有一个名为 df 的数据框,那么我们可以使用下面提到的命令 − 查找 df 中每列的唯一值和缺失值的频率。

apply(df,2,table,useNA="always")

示例 1

以下代码片段创建了一个示例数据框 −

x1<-sample(c(NA,1,2),20,replace=TRUE)
x2<-sample(c(NA,1,2),20,replace=TRUE)
df1<-data.frame(x1,x2)
df1

创建以下数据框

   x1 x2
 1 1  NA
 2 1   1
 3 2   2
 4 2   2
 5 NA  1
 6 1   1
 7 1   1
 8 1  NA
 9 NA  1
10 1   2
11 2   1
12 2  NA
13 1   2
14 1  NA
15 1  NA
16 NA NA
17 NA  1
18 1   2
19 2   1
20 NA NA

要查找上面创建的数据框中 df1 中每列的唯一值和缺失值的频率,请将以下代码添加到上面的代码片段中 −

x1<-sample(c(NA,1,2),20,replace=TRUE)
x2<-sample(c(NA,1,2),20,replace=TRUE)
df1<-data.frame(x1,x2)
apply(df1,2,table,useNA="always")

输出

如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −

   x1 x2
 1 10 8
 2  5 5
<NA 5 7

示例 2

以下代码片段创建了一个示例数据框 −

y1<-sample(c(NA,5,10),20,replace=TRUE)
y2<-sample(c(NA,5,10,20),20,replace=TRUE)
df2<-data.frame(y1,y2)
df2

创建以下数据框

  y1  y2
 1 5  NA
 2 NA NA
 3 10 NA
 4 5   5
 5 5  NA
 6 5   5
 7 5  10
 8 NA 10
 9 NA 20
10 5  10
11 10 NA
12 NA  5
13 NA NA
14 10 10
15 10 10
16 10  5
17 NA 10
18 10 10
19 5  20
20 NA 10

要查找上面创建的数据框中 df2 中每列的唯一值和缺失值的频率,请将以下代码添加到上面的代码片段中 −

y1<-sample(c(NA,5,10),20,replace=TRUE)
y2<-sample(c(NA,5,10,20),20,replace=TRUE)
df2<-data.frame(y1,y2)
apply(df2,2,table,useNA="always")

输出

如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −

$y1
5 10 <NA
7  6   7
$y2
5 10 20 <NA
4  8  2   6

示例 3

以下代码片段创建了一个示例数据框 −

z1<-sample(c(NA,25,45),20,replace=TRUE)
z2<-sample(c(NA,25,45),20,replace=TRUE)
df3<-data.frame(z1,z2)
df3

创建以下数据框

   z1 z2
 1 45 NA
 2 NA NA
 3 25 25
 4 25 25
 5 NA NA
 6 25 NA
 7 NA 45
 8 25 NA
 9 25 25
10 NA 45
11 45 25
12 25 25
13 25 45
14 NA 25
15 45 NA
16 NA 45
17 25 45
18 25 NA
19 45 NA
20 NA 45

要查找上面创建的数据框中 df3 中每列的唯一值和缺失值的频率,请将以下代码添加到上面的代码片段中 −

z1<-sample(c(NA,25,45),20,replace=TRUE)
z2<-sample(c(NA,25,45),20,replace=TRUE)
df3<-data.frame(z1,z2)
apply(df3,2,table,useNA="always")

输出

如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −

    z1 z2
 25  9 6
 45  4 6
<NA  7 8

相关文章