(IV) Funkcja tapply()

Funkcja tapply() stosuje funkcje do danych w tabelach krzyżowych. Argumenty to X, IND, FUN, wszelkie dodatkowe argumenty FUN i simplify. Wartością domyślną FUN jest NULL, a wartością domyślną simplify jest TRUE. Argument X musi być obiektem atomowym i jest wymuszony na wektorze. Argumentem może być tabela awaryjna utworzona przez funkcję table(). Długość X jest zatem iloczynem wymiarów tabeli awaryjnej. Argument IND musi być wektorem, który można wymusić na czynnik lub listę wektorów, które można przekształcić w czynniki. Długość X i długość (y) wektorów współczynników muszą być takie same. Wartości X to liczba obserwacji z daną kombinacją czynników, gdzie kombinacje czynników są podane przez przecięcie wartości współczynników. Jeśli kombinacje są powtarzane, funkcja nie działa prawidłowo. Nie ma potrzeby wprowadzania zer dla kombinacji czynników bez obserwacji, ale mogą być uwzględnione zera. Użycie tapply() bez funkcji daje indeks komórek, które zawierają obserwacje, podczas gdy użycie funkcji daje tabelę krzyżową współczynnika, z funkcją zastosowaną do zawartości komórek. Oto przykład:

> list(c(“a”,”b”,”b”,”c”), c(5,5,6,5))

[[1]]

[1] “a” “b” “b” “c”

[[2]]

[1] 5 5 6 5

> cbind(c(“a”,”b”,”b”,”c”),c(5,5,6,5))

[,1] [,2]

[1,] “a” “5”

[2,] “b” “5”

[3,] “b” “6”

[4,] “c” “5”

> tapply(1:4, list(c(“a”,”b”,”b”,”c”), c(5,5,6,5)))

[1] 1 2 5 3

> tapply(1:4, list(c(“a”,”b”,”b”,”c”), c(5,5,6,5)), “^”,3)

5 6

a 1 NA

b 8 27

c 64 NA

Więcej informacji o tapply() można znaleźć, wpisując ?tapply po znaku zachęty R.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *