Jak określić przerwy histogramu w r (z przykładami)
Domyślnie funkcja hist() w R używa reguły Sturgesa do określenia liczby pojemników do użycia w histogramie.
Reguła Sturgesa wykorzystuje następujący wzór do określenia optymalnej liczby grup do wykorzystania w histogramie:
Optymalne pojemniki = ⌈log 2 n + 1⌉
Złoto:
- n: całkowita liczba obserwacji w zbiorze danych.
- ⌈ ⌉: Symbole oznaczające „sufit”, czyli zaokrąglanie odpowiedzi do najbliższej liczby całkowitej.
Na przykład, jeśli zbiór danych zawiera 31 obserwacji, reguła Sturge’a będzie wykorzystywać następujący wzór w celu określenia optymalnej liczby grup do użycia w histogramie:
Przedziały optymalne = ⌈log 2 (31) + 1⌉ = ⌈4,954 + 1⌉ = ⌈5,954⌉ = 6 .
Zgodnie z regułą Sturgesa do wizualizacji tego zbioru danych powinniśmy użyć 6 pól na histogramie.
Jeśli użyjesz funkcji hist() w R, reguła Sturgesa zostanie użyta do automatycznego wybrania liczby pojemników do wyświetlenia na histogramie.
hist(data)
Nawet jeśli użyjesz argumentu breaks , aby określić inną liczbę używanych pojemników, R użyje go tylko jako „sugestii” ile pojemników ma użyć.
hist(data, breaks= 7 )
Możesz jednak użyć poniższego kodu, aby wymusić na R użycie określonej liczby pól na histogramie:
#create histogram with 7 bins hist(data, breaks = seq(min(data), max(data), length. out = 8 ))
Uwaga : Musisz użyć długości n+1 dla długości.out, gdzie n to liczba żądanych pojemników.
Poniższy przykład pokazuje, jak wykorzystać ten kod w praktyce.
Przykład: określanie przerw histogramu w R
Załóżmy, że mamy następujący zestaw danych w R z 16 wartościami:
#create vector of 16 values
data <- c(2, 3, 3, 3, 4, 4, 5, 6, 8, 10, 12, 14, 15, 18, 20, 21)
Jeśli użyjemy funkcji hist() , R utworzy następujący histogram z 5 przedziałami:
#create histogram
hist(data)
Uwaga : R wykorzystał regułę Sturgesa do ustalenia, że 5 grup to optymalna liczba grup do wykorzystania do wizualizacji zbioru danych zawierającego 16 obserwacji.
Jeśli spróbujemy użyć argumentu breaks , aby określić 7 grup do użycia na histogramie, R potraktuje to jedynie jako „sugestię” i zamiast tego zdecyduje się użyć 10 grup:
#attempt to create histogram with 7 bins
hist(data, breaks= 7 )
Możemy jednak użyć poniższego kodu, aby zmusić R do użycia 7 przedziałów na histogramie:
#create histogram with 7 bins
hist(data, breaks = seq(min(data), max(data), length. out = 8 ))
Należy zauważyć, że wynikiem jest histogram z 7 równomiernie rozmieszczonymi polami.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje w języku R:
Jak utworzyć histogram częstotliwości względnej w R
Jak wykreślić wiele histogramów w R