我有一个数字向量.我们称之为mydata:
str(mydata)
# num [1:236] 2 1 1 2 2 1 2 1 2 2 ...
然后我可以使用表计算每个值:
table(mydata)
# mydata
# 1 2 9 10
# 20 200 14 2
现在,我想选择具有最高计数的值(在本例中为“2”).
通过使用,我可以找到最高计数(例如在这种情况下为200)
max function:max(table(mydata)).但是如何获得与表中最大计数相关的名称,即“2”?
最佳答案 表非常类似于列表或数据框,因为它具有可通过向量子集访问的值和名称(属性).
> mydata <- c(rep(1, 20), rep(2, 200), rep(9, 14), rep(10, 2))
> tab <- table(mydata)
> tab
## mydata
## 1 2 9 10
## 20 200 14 2
> names(tab)
## [1] "1" "2" "9" "10"
> c(val = names(tab)[tab == max(tab)], freq = max(tab))
## val freq
## "2" "200"
以下是等同的
> tab[ names(tab)[tab == max(tab)] ]
## 2
## 200
> tab["2"]
## 2
## 200
关于对象的其他有用的东西在其属性中描述
> attributes(tab)
$dim
[1] 4
$dimnames
$dimnames$mydata
[1] "1" "2" "9" "10"
$class
[1] "table"