从R

时间:2017-01-08 05:16:35

标签: r

我正在处理R中的Faithful内置数据集,我想找出具有最大喷发次数的间隔。我已经将数据分组为间隔,并使用max()函数得到最大喷发的值,但不是间隔。无论如何都要显示具有最大喷发次数的区间?

表格如下:

[1.5,2)      51
[2,2.5)      41
[2.5,3)       5
[3,3.5)       7
[3.5,4)      30
[4,4.5)      73
[4.5,5)      61
[5,5.5)       4

在此考虑,最大值为73,如何打印[4, 4.5)

1 个答案:

答案 0 :(得分:1)

如果您的数据位于指定的num q中,请执行以下操作:

> q
[1.5,2) [2,2.5) [2.5,3) [3,3.5) [3.5,4) [4,4.5) [4.5,5) [5,5.5) 
     51      41       5       7      30      73      61       4

使用names

> names(q)[which.max(q)]
[1] "[4,4.5)"

如果它出现在任何类型的数据框/矩阵/ t p中,请使用rownames

> p
        max_er
[1.5,2)     51
[2,2.5)     41
[2.5,3)      5
[3,3.5)      7
[3.5,4)     30
[4,4.5)     73
[4.5,5)     61
[5,5.5)      4

> rownames(p)[which.max(p$max_er)]
[1] "[4,4.5)"