Estoy tratando de conseguir el máximo de frecuencias en un histograma gráfico. Tengo una lista de valores. Entonces, hago lo siguiente:

hist(list, breaks=length(list), freq=TRUE)

y automáticamente hace que los rangos de los ejes x y y. El eje y en las frecuencias y en el eje x los valores de la lista.

Así, ¿cómo puedo encontrar la máxima frecuencia que se muestra en este gráfico?

Estoy tratando de hacer una leyenda en la parte superior derecha de la esquina de mi gráfica, por lo que necesito para obtener el máximo valor de frecuencia. O hay una manera de decirle a R a poner una leyenda de la caja en la esquina superior derecha del gráfico?

  • es la función histo en un paquete, o escribir, o que quiso decir hist?
InformationsquelleAutor CodeGuy | 2011-04-17

4 Comentarios

  1. 7

    Los valores de un histograma puede ser almacenado como un marco de datos en R. Tomando el OP ejemplo dataframe ‘la lista’, usted podría:

    list_histo <- hist(list, breaks=length(list), freq=TRUE)

    simplemente escribiendo

    list_histo 

    de nuevo en R se mostrará el nuevo ‘meta’ del marco de datos que contiene información sobre el histograma de los datos que aquí se muestra es arbitraria y con fines ilustrativos):

    $breaks
    [1] 0.40 0.42 0.44 0.46 0.48 0.50 0.52 0.54 0.56 0.58 0.60 0.62 0.64 0.66 0.68
    [16] 0.70 0.72 0.74 0.76
    
    $counts
    [1]      1     15    112    878   4734  17995  51094 110146 178855 216454
    [11] 194536 130591  64218  23017   6117   1070    144     23
    
    $intensities
    [1]  0.00005  0.00075  0.00560  0.04390  0.23670  0.89975  2.55470  5.50730
    [9]  8.94275 10.82270  9.72680  6.52955  3.21090  1.15085  0.30585  0.05350
    [17]  0.00720  0.00115
    
    $density
    [1]  0.00005  0.00075  0.00560  0.04390  0.23670  0.89975  2.55470  5.50730
    [9]  8.94275 10.82270  9.72680  6.52955  3.21090  1.15085  0.30585  0.05350
    [17]  0.00720  0.00115
    
    $mids
    [1] 0.41 0.43 0.45 0.47 0.49 0.51 0.53 0.55 0.57 0.59 0.61 0.63 0.65 0.67 0.69
    [16] 0.71 0.73 0.75
    
    $xname
    [1] "list_histo"
    
    $equidist
    [1] TRUE
    
    attr(,"class")
    [1] "histogram"

    llamar el valor más grande es ahora sencillo, simplemente utilizando

    max(list_histo$counts)

    devolverá el valor máximo.

  2. 2
    set.seed(100)
    
    x = rnorm(100, mean = 5, sd = 2)
    
    res = hist(x)
    
    res$mids[which.max(res$counts)]
    
    [1] 4.5

    Dependiendo de los saltos de los anchos de las barras que van a cambiar, pero los medios le dará el punto medio de la barra que usted está buscando. Esto encuentra el punto medio de la barra con el número más alto (frecuencia máxima)

  3. 2

    Lugar de x, y los argumentos de la leyenda, puede utilizar legend('topright',...)

  4. 0

    También puede utilizar table(list)

    Devolverá una lista de los valores y tumber de veces que se repite:

    > list<-c(0.2, 0.6, 0.4, 0.5, 0.1, 0.5, 0.6, 0.6, 0.6, 0.1, 0.1, 0.6, 0.6, 0.6, 0.6)
    
    > table(list)
    list
    0.1 0.2 0.4 0.5 0.6 
      3   1   1   2   8 
    
    > max(table(list))
    [1] 8

Dejar respuesta

Please enter your comment!
Please enter your name here