如何查找 R 数据框中每个值的频率?
r programmingserver side programmingprogramming更新于 2025/4/8 21:22:17
要查找 R 数据框中每个值的频率,我们可以使用表函数和 unlist 函数。
例如,如果我们有一个名为 df 的数据框,并且我们想查找 df 中每个值的频率,那么我们可以使用以下命令 −
table(unlist(df))
示例 1
以下代码片段创建了一个示例数据框−
x1<-sample(0:9,20,replace=TRUE) x2<-sample(0:9,20,replace=TRUE) x3<-sample(0:9,20,replace=TRUE) x4<-sample(0:9,20,replace=TRUE) df1<-data.frame(x1,x2,x3,x4) df1
创建以下数据框
x1 x2 x3 x4 1 0 2 8 0 2 6 6 4 2 3 8 2 5 8 4 0 3 8 5 5 5 1 2 5 6 8 6 2 9 7 9 3 4 2 8 1 7 3 4 9 4 0 3 6 10 3 9 4 6 11 9 7 9 2 12 4 1 8 7 13 8 6 9 7 14 0 3 5 7 15 6 7 2 6 16 4 1 5 4 17 6 4 0 4 18 9 3 6 3 19 1 6 5 1 20 8 6 0 5
要查找上面创建的数据框中 df1 中每个值的频率,请将以下代码添加到上面的代码片段中 −
x1<-sample(0:9,20,replace=TRUE) x2<-sample(0:9,20,replace=TRUE) x3<-sample(0:9,20,replace=TRUE) x4<-sample(0:9,20,replace=TRUE) df1<-data.frame(x1,x2,x3,x4) table(unlist(df1))
输出
如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −
0 1 2 3 4 5 6 7 8 9 7 6 8 8 10 8 12 6 8 7
示例 2
以下代码片段创建了一个示例数据框 −
y1<-rpois(20,1) y2<-rpois(20,1) y3<-rpois(20,1) df2<-data.frame(y1,y2,y3) df2
创建以下数据框
y1 y2 y3 1 1 1 1 2 0 0 0 3 1 5 0 4 1 1 2 5 0 2 0 6 0 2 1 7 0 2 0 8 0 0 2 9 0 0 1 10 2 1 0 11 0 0 1 12 2 1 0 13 1 1 2 14 0 0 0 15 1 2 1 16 3 2 0 17 0 0 1 18 1 0 0 19 1 1 0 20 1 1 0
要查找上面创建的数据框中 df2 中每个值的频率,请将
以下代码添加到上面的代码片段 −
y1<-rpois(20,1) y2<-rpois(20,1) y3<-rpois(20,1) df2<-data.frame(y1,y2,y3) table(unlist(df2))
输出
如果将上面给出的所有代码片段作为单个程序执行,则会生成
以下输出 −
0 1 2 3 5 27 21 10 1 1
示例 3
以下代码片段创建了一个示例数据框−
z1<-round(rnorm(20),0) z2<-round(rnorm(20),0) z3<-round(rnorm(20),0) df3<-data.frame(z1,z2,z3) df3
创建以下数据框
z1 z2 z3 1 1 1 0 2 -1 -2 -1 3 0 1 0 4 0 0 0 5 -1 -2 0 6 -1 -1 -1 7 0 1 0 8 0 -1 0 9 -1 -1 1 10 0 0 1 11 -2 -1 1 12 1 -1 0 13 -2 0 0 14 -2 -1 1 15 1 1 0 16 2 0 0 17 0 0 1 18 0 1 0 19 0 1 0 20 1 1 -2
要查找上面创建的数据框中 df3 中每个值的频率,请将
以下代码添加到上面的代码片段 −
z1<-round(rnorm(20),0) z2<-round(rnorm(20),0) z3<-round(rnorm(20),0) df3<-data.frame(z1,z2,z3) table(unlist(df3))
输出
如果将上面给出的所有代码片段作为单个程序执行,则会生成
以下输出 −
-2 -1 0 1 2 6 12 25 16 1