Hoe het aantal waarnemingen in R te tellen, zoals het aantal Stata-opdrachten

stata-opdracht:

count if sex==1 & group1==2
count if sex==1 & group2=="A"

count telt het aantal waarnemingen dat aan de opgegeven voorwaarden voldoet. Als er geen voorwaarden zijn opgegeven, geeft count het aantal waarnemingen in de gegevens weer.

Hoe te tellen in R? Dank je.


Antwoord 1, autoriteit 100%

Met de functie withkunt u verkorte kolomverwijzingen gebruiken en sumtelt TRUEresultaten van de uitdrukking(en).

sum(with(aaa, sex==1 & group1==2))
## [1] 3
sum(with(aaa, sex==1 & group2=="A"))
## [1] 2

Zoals @mnelal aangaf, kun je ook het volgende doen:

nrow(aaa[aaa$sex==1 & aaa$group1==2,])
## [1] 3
nrow(aaa[aaa$sex==1 & aaa$group2=="A",])
## [1] 2

Het voordeel daarvan is dat u het volgende kunt doen:

nrow(aaa)
## [1] 6

En het gedrag komt bijna exact overeen met Stata’s count(ondanks de syntaxis).


Antwoord 2, autoriteit 23%

U kunt ook de filterfunctie van het dplyr-pakket gebruiken dat rijen met overeenkomende voorwaarden retourneert.

> library(dplyr)
> nrow(filter(aaa, sex == 1 & group1 == 2))
[1] 3
> nrow(filter(aaa, sex == 1 & group2 == "A"))
[1] 2

Other episodes