是否有一个简单的单行命令来获取R中分类变量的排序频率表?
问题: 例如,已经有人问过几次如何生成R see中分类变量的排序频率表,该表标记为的重复项。答案是三个连续的操作:1。生成频率表,2。转换为数据帧,3。排序请参见下面的示例 对于这样一个简单的操作,这是相对复杂的。更重要的是,数据框的摘要将为所讨论的列提供我要查找的排序频率表的前5行,前提是该列中不同值的数量大于5 范例 考虑表单的数据框架是否有一个简单的单行命令来获取R中分类变量的排序频率表?,r,sorting,dataframe,frequency,R,Sorting,Dataframe,Frequency,问题: 例如,已经有人问过几次如何生成R see中分类变量的排序频率表,该表标记为的重复项。答案是三个连续的操作:1。生成频率表,2。转换为数据帧,3。排序请参见下面的示例 对于这样一个简单的操作,这是相对复杂的。更重要的是,数据框的摘要将为所讨论的列提供我要查找的排序频率表的前5行,前提是该列中不同值的数量大于5 范例 考虑表单的数据框架 example_df <- data.frame("Avg" = c(2558,2532,2503,2498,2491,2491,2477,2467,
example_df <- data.frame("Avg" = c(2558,2532,2503,2498,2491,2491,2477,2467,2460,2458,2445,2422), "Name" = c("Jun","Wang","Xi","Wang","Wang","Ma","Li","Ma","Xi","Lin","Yang","Zhao"))
但这两种选择似乎都相当复杂。我想可能有一种更简单、更直接的方法。实际上,有一个非常简单的命令,它将给出所需的输出,但只有前5行,以及其他无关的输出,summary:
输出:
Avg Name
Min. :2422 Wang :3
1st Qu.:2460 Ma :2
Median :2484 Xi :2
Mean :2484 Jun :1
3rd Qu.:2499 Li :1
Max. :2558 Lin :1
(Other):2
这个怎么样
sort(table(example_df$Name),decreasing = TRUE)
仅供参考,您可以使用;把一切放在一条线上。i、 埃克斯
Var1 Freq
5 Wang 3
4 Ma 2
6 Xi 2
1 Jun 1
2 Li 1
3 Lin 1
7 Yang 1
8 Zhao 1
summary(example_df)
Avg Name
Min. :2422 Wang :3
1st Qu.:2460 Ma :2
Median :2484 Xi :2
Mean :2484 Jun :1
3rd Qu.:2499 Li :1
Max. :2558 Lin :1
(Other):2
sort(table(example_df$Name),decreasing = TRUE)