Hoe conditioneel gemiddelde in r te berekenen (met voorbeelden)


U kunt de volgende syntaxis gebruiken om een voorwaardelijk gemiddelde in R te berekenen:

 mean(df[df$team == ' A ', ' points '])

Hiermee wordt het gemiddelde van de „punten“-kolom berekend voor elke rij in het gegevensframe waarbij de „team“-kolom gelijk is aan „A“.

De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken met het volgende dataframe:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 points=c(99, 90, 93, 86, 88, 82),
                 assists=c(33, 28, 31, 39, 34, 30))

#view data frame
df

  team points assists
1 A 99 33
2 A 90 28
3 A 93 31
4 B 86 39
5 B 88 34
6 B 82 30

Voorbeeld 1: Bereken het voorwaardelijke gemiddelde voor een categorische variabele

De volgende code laat zien hoe u het gemiddelde van de kolom ‚punten‘ alleen kunt berekenen voor rijen in het gegevensframe waarin de kolom ‚team‘ de waarde ‚A‘ heeft.

 #calculate mean of 'points' column for rows where team equals 'A'
mean(df[df$team == ' A ', ' points '])

[1] 94

De gemiddelde waarde in de kolom ‚punten‘ voor rijen waarin ‚team‘ gelijk is aan ‚A‘ is 94 .

We kunnen dit handmatig controleren door de puntwaarden alleen te middelen voor lijnen waarbij „team“ gelijk is aan „A“:

  • Gemiddelde punten: (99 + 90 + 93) / 3 = 94

Voorbeeld 2: Bereken het voorwaardelijke gemiddelde voor een numerieke variabele

De volgende code laat zien hoe u het gemiddelde van de kolom ‚Assists‘ alleen kunt berekenen voor rijen in het gegevensframe waarin de kolom ‚punten‘ een waarde heeft die groter is dan of gelijk is aan 90.

 #calculate mean of 'assists' column for rows where 'points' >= 90
mean(df[df$points >= 90 , ' assists '])

[1] 30.66667

De gemiddelde waarde in de kolom ‚Assists‘ voor rijen waarin ‚punten‘ groter dan of gelijk aan 90 zijn, is 30,66667 .

We kunnen dit handmatig controleren door de hulpwaarden alleen te middelen voor lijnen waarvan de punten groter zijn dan of gelijk zijn aan 90:

  • Gemiddelde assists: (33 + 28 + 31) / 3 = 30,66667

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere gemiddelde waarden in R kunt berekenen:

Hoe een getrimd gemiddelde in R te berekenen
Hoe het geometrische gemiddelde in R te berekenen
Hoe een gewogen gemiddelde in R te berekenen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert