Optælling af antallet af elementer med værdierne x i en vektor

Jeg har en vektor af tal:

numbers <- c(4,23,4,23,5,43,54,56,657,67,67,435,
         453,435,324,34,456,56,567,65,34,435)

Hvordan kan jeg få R til at tælle antallet af gange, en værdi x optræder i vektoren?

Løsning

Du kan bare bruge table():

> a  a
numbers
  4   5  23  34  43  54  56  65  67 324 435 453 456 567 657 
  2   1   2   2   1   1   2   1   2   1   3   1   1   1   1 

Så kan du lave en undergruppe af den:

> a[names(a)==435]
435 
  3

Eller konvertere det til en data.frame, hvis du er mere komfortabel med at arbejde med det:

> as.data.frame(table(numbers))
   numbers Freq
1        4    2
2        5    1
3       23    2
4       34    2
...
Kommentarer (10)

Jeg ville nok gøre noget i denne retning

length(which(numbers==x))

Men i virkeligheden er en bedre måde at gøre det på

table(numbers)
Kommentarer (2)

Her er en hurtig og beskidt måde:


x 
Kommentarer (0)