a <- c(1, 2, 0, 3, 7)
Sto cercando una funzione per restituire l'indice del valore più piccolo, 3. Che cos'è?Indice di ritorno del valore più piccolo in un vettore?
a <- c(1, 2, 0, 3, 7)
Sto cercando una funzione per restituire l'indice del valore più piccolo, 3. Che cos'è?Indice di ritorno del valore più piccolo in un vettore?
Siete alla ricerca di which.min()
:
a <- c(1,2,0,3,7,0,0,0)
which.min(a)
# [1] 3
which(a == min(a))
# [1] 3 6 7 8
(Come si può vedere da quanto sopra, quando diversi elementi sono legati per il minimo, which.min()
restituisce solo l'indice del primo È possibile utilizzare il. secondo costruire se si desidera invece gli indici di tutti gli elementi che corrispondono al valore minimo.)
In alternativa alla risposta di Josh
a <- c(1, 2, 0, 3, 7)
which(a == min(a))
questo dà ogni indice che è uguale al valore minimo. Quindi, se abbiamo avuto più di un valore che corrisponde al valore più basso
a <- c(1, 2, 0, 3, 7, 0)
which(a == min(a)) # returns both 3 and 6
which.min(a) # returns just 3
Edit: Se state cercando è solo quanti elementi sono uguali al minimo (come si implica in uno dei commenti) è possibile fatelo invece:
a <- c(1, 2, 0, 3, 7, 0)
sum(a == min(a))
... sì, mi stavo chiedendo come posso ottenere gli indici di tutti gli elementi minimi? Devo scoprire quanti sono il minimo, perfetto! Mi ci è voluto un po 'di tempo per capirlo, grazie. – hhh
@hhh - Per scoprire quanti elementi sono il minimo, puoi semplicemente usare: 'sum (a == min (a))'. –