Jak korzystać z funkcji tapply() w r (z przykładami)
Funkcji tapply() w R można użyć do zastosowania funkcji do wektora pogrupowanego według innego wektora.
Ta funkcja wykorzystuje następującą podstawową składnię:
tapper(X, INDEX, ZABAWA, ..)
Złoto:
- X : wektor, do którego ma zostać zastosowana funkcja
- INDEKS : wektor do grupy
- ZABAWA : Funkcja do zastosowania
Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję z następującą ramką danych w R:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
points=c(14, 19, 13, 8, 15, 15, 17, 19),
assists=c(4, 3, 3, 5, 9, 14, 15, 12))
#view data frame
df
team position points assists
1 AG 14 4
2 AG 19 3
3 AF 13 3
4 AF 8 5
5 BG 15 9
6 BG 15 14
7 BF 17 15
8 BF 19 12
Przykład 1: zastosowanie funkcji do zmiennej pogrupowanej według zmiennej
Poniższy kod pokazuje, jak używać funkcji tapply() do obliczania średniej wartości punktów , pogrupowanej według zespołu :
#calculate mean of points, grouped by team
tapply(df$points, df$team, mean)
AB
13.5 16.5
Z wyniku możemy zobaczyć:
- Średnia wartość punktowa drużyny A wynosi 13,5 .
- Średnia wartość punktowa drużyny B wynosi 16,5 .
Pamiętaj, że po funkcji możesz także dodać dodatkowe argumenty, np . na.rm , aby wskazać, że chcesz obliczyć średnią ignorując wartości NA w ramce danych:
#calculate mean of points, grouped by team
tapply(df$points, df$team, mean, na. rm = TRUE )
AB
13.5 16.5
Przykład 2: zastosowanie funkcji do zmiennej pogrupowanej według kilku zmiennych
Poniższy kod pokazuje, jak używać funkcji tapply() do obliczania średniej wartości punktów , pogrupowanych według zespołu i pozycji :
# calculate mean of points, grouped by team and position
tapply(df$points, list(df$team, df$position), mean, na. rm = TRUE )
FG
A 10.5 16.5
B 18.0 15.0
Z wyniku możemy zobaczyć:
- Średnia wartość punktowa drużyny A i pozycji F wynosi 10,5 .
- Średnia wartość punktowa drużyny A i pozycji G wynosi 16,5 .
- Średnia wartość punktowa drużyny B i pozycji F wynosi 18,0 .
- Średnia wartość punktowa drużyny B i pozycji G wynosi 15,0 .
Uwaga : w tym przykładzie pogrupowaliśmy według dwóch zmiennych, ale w funkcji list() możemy umieścić dowolną liczbę zmiennych, aby pogrupować jeszcze więcej zmiennych.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak korzystać z innych typowych funkcji w R:
Jak korzystać z funkcji dim() w R
Jak korzystać z funkcji table() w R
Jak korzystać z funkcji znak() w R