Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Czołem :)

Dla celów szkoleniowych potrzebuję wygenerować nakładające się na siebie rozkłady: mezo-, lepto- i platykurtyczny. Jednocześnie chcę uniknąć syfu, który bywa nierzadko popełniany, a więc nanoszenia na jeden wykres krzywych gęstości rozkładów o różnej wariancji i "odpowiedniego" opisu osi.

Tym bardziej, że właśnie częścią szkolenia będzie wyjaśnienie czym się różni kurtoza od wariancji (a to cięęęężko wchodzi do głów), więc właśnie z wariancją kombinować nie mogę.

A zatem trzy pierwsze (odpowiednie) momenty kolejnych rozkładów muszą być stałe, aby mieć stałą średnią, wariancję i skośność.

Najprostsze, co mi przyszło do głowy, to składanie rozkładów (fajnie brzmi :D):

1. mezo - rnorm(N, m, s)
2. lepto - c( rnorm(N/2, m, s_małe), rnorm(N/2, m, s_duże )
3. platy - c( rnorm(N/3, m_ujemne, s), rnorm(N/3, 0, s), rnorm(N/3, m_dodatnie, s) )

Gdzie odch. std. jest odpowiednio dobrane.

Trochę problemów jest z platykurtycznym, bo efekt uzyskany tą drogą nie jest zbyt widoczny (K=-0.5), a łatwo stracić kontrolę nad wariancją. Łączenie rozkładów o mniejszej wariancji tworzy oczywiście "piki", a zwiększanie parametru wygładzania dla density() to oczywiście tak samo, jak by zwiększyć wariancję :/ tak czy siak - ciężko "wypłaszczyć ogony" i "rozdąć środek"... Rozumiem więc, że nie tędy droga.

Coś tam uzyskałem, ale trzeba było dobierać eksperymentalnie współczynniki i efekt nie jest zbyt dobry.

Spróbuję się jeszcze bawić krzywymi Johnsona, gdzie można zadać 4 pierwsze momenty, ale muszę o tym doczytać. Tymczasem - może ktoś ma jakiś pomysł?

--------------------
Może komuś się przyda:

library('e1071')

N <- 1000000
cols <- c(mezo="black", lepto="orangered", platy="blue")

mezo <- rnorm(N, 0, 1.52)
plot(density(mezo,from=-5,to=5), col=cols["mezo"], main="Rozkłady mezo-, platy- i leptokurtyczne",
xlab="Wartości cechy", ylab="Gęstość", lwd=2, ylim=range(0,0.4), panel.first=grid(col='gray'), lty="solid")

lepto <- c(rnorm(N/2,mean=0,sd=2.0), rnorm(N/2,mean=0,sd=0.8))
lines(density(lepto), col=cols["lepto"], lwd=2, lty="dotted")

platy <- c(rnorm(N/3,mean=-1.4), rnorm(N/3, mean=0), rnorm(N/3,mean=1.4))
lines(density(platy), col=cols["platy"], lwd=2, lty="longdash")

text(adj=c(0,0), -5, 0.35, substitute(bar(x)[mezo]~"="~srednia, list(srednia=sprintf("%.2f", mean(mezo)))), cex=0.8, col=cols["mezo"])
text(adj=c(0,0), -5, 0.31, substitute(bar(x)[lepto]~"="~srednia, list(srednia=sprintf("%.2f", mean(lepto)))), cex=0.8, col=cols["lepto"])
text(adj=c(0,0), -5, 0.27, substitute(bar(x)[platy]~"="~srednia, list(srednia=sprintf("%.2f", mean(platy)))), cex=0.8, col=cols["platy"])

text(adj=c(0,0), -2.8, 0.35, substitute(bar(sigma)[mezo]~"="~sd, list(sd=sprintf("%.2f", sd(mezo)))), cex=0.8, col=cols["mezo"])
text(adj=c(0,0), -2.8, 0.31, substitute(bar(sigma)[lepto]~"="~sd, list(sd=sprintf("%.2f", sd(lepto)))), cex=0.8, col=cols["lepto"])
text(adj=c(0,0), -2.8, 0.27, substitute(bar(sigma)[platy]~"="~sd, list(sd=sprintf("%.2f", sd(platy)))), cex=0.8, col=cols["platy"])

text(adj=c(.5,0.5), -0.1, 0.05, sprintf("N=%i", N))
text(adj=c(0,0), 1.2, 0.35, substitute(sk[mezo]~"="~sks, list(sks=sprintf("%.2f", skewness(mezo)))), cex=0.8, col=cols["mezo"])
text(adj=c(0,0), 1.2, 0.31, substitute(sk[lepto]~"="~sks, list(sks=sprintf("%.2f", skewness(lepto)))), cex=0.8, col=cols["lepto"])
text(adj=c(0,0), 1.2, 0.27, substitute(sk[platy]~"="~sks, list(sks=sprintf("%.2f", skewness(platy)))), cex=0.8, col=cols["platy"])

text(adj=c(0,0), 3.5, 0.35, substitute(bold(K[mezo]~"="~kurtoza), list(kurtoza=sprintf("%.2f", kurtosis(mezo)))), cex=0.8, col=cols["mezo"])
text(adj=c(0,0), 3.5, 0.31, substitute(bold(K[lepto]~"="~kurtoza), list(kurtoza=sprintf("%.2f", kurtosis(lepto)))), cex=0.8, col=cols["lepto"])
text(adj=c(0,0), 3.5, 0.27, substitute(bold(K[platy]~"="~kurtoza), list(kurtoza=sprintf("%.2f", kurtosis(platy)))), cex=0.8, col=cols["platy"])



Obrazek


PS: bardzo "po polsku" napisałem temat... Michale, jeśli można, to prosiłbym o korektę :)Adrian Olszewski edytował(a) ten post dnia 25.05.12 o godzinie 19:57

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:

Coś tam uzyskałem, ale trzeba było dobierać eksperymentalnie współczynniki i efekt nie jest zbyt dobry.
może sprecyzować zadanie optymalizacyjne dla wyznaczenia szukanych współczynników.

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

To nie współczynniki są problemem, tylko metoda uzyskania rozkładu. Rozkład normalny nie ma parametru kształtu. Kurtoza jest dla niego jedynie miarą i jej wartość jest stała. Musiałem sobie radzić łącząc rozkłady o różnych parametrach i wygładzać wynik jądrowym estymatorem gęstości. No i to jakoś tam działa, tyle, że jakiego bym jądra nie używał, nie bardzo mogę zejść poniżej K=0.5 bez ruszenia szerokości krzywej (co sprawia wrażenie większej wariancji). Poza tym moja metoda to tylko szczególny przypadek rozwiązania - nie wiadomo ogólnie ile rozkładów normalnych i o jakich parametrach użyć. Tutaj musi być inny nośnik. /Np. do uzyskania x-skośnego rozkładu fajnie się nadaje mieszanka rnorm i runif/.

Przejrzałem listę rozkładów, które są zależne od parametru kształtu. Jak na złość w większości przypadków parametr ten odpowiada za kurtozę i skośność jednocześnie. Jak bym potrzebował wygenerować asymetryczny rozkład to mam ich od groma. Jak kurtozę - to chyba tylko t Studenta się nadaje. W sumie mogłem od razu wziąć go na tapetę, a od dołu uzyskać ograniczenie na rozkład normalny (K=0).

No nic, na razie jakiś tam efekt uzyskałem, do prezentacji wystarczy. Nic pilnego.

Przy okazji - dałem się "podejść" intuicji :] Myślałem, że granicznie w dół mogę zbliżyć się do kurtozy rozkładu jednostajnego. Tymczasem są przecież rozkłady typu "U", gdzie cała gęstość jest "wypchnięta" właśnie w ogony.

 > kurtosis(rnorm(1000))
[1] 0.06604086
> kurtosis(runif(1000))
[1] -1.224291
> kurtosis(rbeta(1000, 0.1, 0.1))
[1] -1.848609


Ciekawa dyskusja o kurtozie:
http://core.ecu.edu/psyc/wuenschk/stathelp/KURTOSIS.txt

-------------
Jak by ktoś potrzebował, to oprócz rozkładu t Studenta można wykorzystać rozkład Pearsona 7go rodzaju. Jednym z parametrów jest właśnie kurtoza. Niestety, nie widać tego zbytnio na wykresie, ale można to odpowiednio zeskalować.

P7 <- function(x, a, m) {
( gamma(m) / (a*sqrt(pi)*gamma(m-0.5) ) )*(1+(x/a)^2)^(-m)
}

Kurt <- function(x, K) {
a <- sqrt(2 + 6/K)
m <- 5/2 + 3/K

P7(x, a, m)
}
x<-seq(-5, 5, len=100)

plot(x, Kurt(x, 1/32), type="l", ylim=c(0, 0.1))
lines(x, Kurt(x, 2), type="l")
lines(x, Kurt(x, 50), type="l")
Adrian Olszewski edytował(a) ten post dnia 26.05.12 o godzinie 20:11

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Każdy rozkład ma parametry kształtu, są one "uwikłane" w funkcji dystrybuanty lub gęstości rozkładu, które to funkcje jednoznacznie opisują rozkład prawdopodobieństwa. Jednak rozkład normalny ma tę wadę, że jest rozkładem idealnym i nie występuje w rzeczywistości. Kurtoza w tym idealnym przypadku jest równa 3 lub 0. Może lepiej przedstawić rozkład rzeczywisty, jednak bardzo zbliżony kształtem do Gaussa. A wariancja jako moment centralny to moment bezwładności wobec osi symetrii. Wariancje można tak jak moment bezwładności liczyć wobec dowolnej charakterystyki rozkładu, kurtoza ma tylko jedno położenie. Może to ułatwi przekazanie różnic pomiędzy powyższymi charakterystykami.
A co do metody uzyskania rozkładu, o ile nie dysponujesz danymi, to zawsze można wygenerować dane np. jako wektor liczb losowy z zadanego przedziału.Agnieszka K. edytował(a) ten post dnia 03.06.12 o godzinie 22:57

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Dzięki za odzew :)

Poradziłem sobie odpowiednio sumując rozkłady tak, jak napisałem wcześniej. Da się nad tym dość łatwo panować przy odrobinie wprawy. Pomogłem sobie także rozkładem Pearsona.

PS: użyłem skrótu myślowego, pisząc, że nie ma parametru kształtu. Parametr kształtu nie występuje we wzorze na gęstość r. norm., nie da się tym sterować. Poza tym jest niezależny od parametru położenia i skali. Miarą związaną z param. kształtu jest kurtoza i algebraicznie jest to 4. moment centralny przeskalowany wariancją, co likwiduje wpływ wariancji na kurtozę (jak być powinno). Rozkład, który ma 4 m. c. różny od zera to już nie jest rozkład normalny. Np. r. norm. może mieć dowolną wariancję, a kurtoza stale wynosi zero. I o to mi chodziło.
Agnieszka K.:
A co do metody uzyskania rozkładu, o ile nie dysponujesz danymi, to zawsze można wygenerować dane np. jako wektor liczb losowy z zadanego przedziału.

I dlatego właśnie prosiłem o pomoc w algorytmie generującym dane... Ale jest to już nieaktualne. Mam co chciałem.


Obrazek
Adrian Olszewski edytował(a) ten post dnia 29.05.12 o godzinie 17:00

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:
Dzięki za odzew :)

Poradziłem sobie odpowiednio sumując rozkłady tak, jak napisałem wcześniej. Da się nad tym dość łatwo panować przy odrobinie wprawy. Pomogłem sobie także rozkładem Pearsona.
I bardzo się cieszę. Ale to była droga do Rzymu przez Krym.

PS: użyłem skrótu myślowego, pisząc, że nie ma parametru kształtu. Parametr kształtu nie występuje we wzorze na gęstość r. norm., nie da się tym sterować. Poza tym jest
Parametry kształtu są wtórne. We wzorze na gęstość występuje odchylenie st. i wariancja.
niezależny od parametru położenia i skali. Miarą związaną z param. kształtu jest kurtoza i algebraicznie jest to 4. moment centralny przeskalowany wariancją, co likwiduje wpływ wariancji na kurtozę (jak być powinno). Rozkład, który ma 4 m. c. różny od zera to już nie jest rozkład normalny. Np. r. norm. może mieć dowolną wariancję, a kurtoza stale wynosi zero. I o to mi chodziło.
We wzorze na kurtoze jest odchylenie st. w potędze czwartej i wariancja w potędze drugiej. Czyli wszędzie występuje ta sama miara odchylenie st., bo wariancja to odchylenie do kwadratu.
Kurtoza jest miarą koncentracji, a wariancja miarą rozproszenia. Wystarczy że zmienisz odchylenie st. automatycznie zmieniasz kształt wykresu gęstości. Jak by tego nie ugryźć wszystko kręci się wokół odchylenia st. I tak można w koło Macieju. I na tym polega piękno statystyki.
dzięki za fajny temat:) bo ja już nawet zapomniałam, że coś takiego jak kurtoza istnieje:) kto dziś używa kurtozy, nią się męczy studentów na pierwszym roku.Agnieszka K. edytował(a) ten post dnia 03.06.12 o godzinie 23:05

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Agnieszka K.:
Parametry kształtu są wtórne. We wzorze na gęstość występuje odchylenie st. i wariancja.

Stąd wynikł problem, że pomieszałem z miarą kształtu parametr kształtu, który jest niezależny od parametrów skali i położenia (nie jest ich funkcją). Innymi słowy nie "przesuwa" rozkładu i nie zmienia jego "szerokości" (wariancja zostaje zachowana). Parametry są tylko trzy, miar - całe mnóstwo.
Wystarczy że zmienisz odchylenie st. automatycznie zmieniasz kształt wykresu gęstości............

Dobrze, ale jedna chwila. Przy okazji - jeśli bredzę, proszę o wyrozumiałość, jako nie matematyk :)

Dla rozkładu normalnego parzysty K-ty moment centralny jest powiązany z odchyleniem standardowym tak, że E(X-u)^k = (k-1)!!sd^k
Dla naszego przypadku E(x-u)^4 = 1*3*sd^4=3sd^4

Jeśli rośnie sd, to oczywiście rośnie także mk, bo oba są funkcją odchyleń od średniej w odpowiednich parzystych potęgach. I dla rozkładu normalnego stosunek 4tego momentu centralnego do kwadratu wariancji, czyli kurtoza, jest stały i wynosi 3 (którą to 3jkę odejmuje się by móc porównywać kurtozy innych rozkładów z kurtozą rnorm przez proste badanie znaku).

Dzięki temu mogę dowolnie zmieniać wariancję (i wart. oczek.) jako parametr generatora rnorm, a kurtoza wygenerowanych danych nadal pozostanie równa 3. A co za tym idzie, nie mogę sterować kurtozą za pomocą generatora liczb z rozkładu normalnego, bo on utrzyma ją na stałym poziomie.

Jedyne, co mogę zrobić, to skorzystać z rozkładu, w którym opisana relacja nie jest zachowana, np. wspomniany Pearsona VII rodzaju albo t-Studenta, gdzie kurtoza jest funkcją liczby stopni swobody. Albo kombinować z sumowaniem rozkładów z różnych rodzin i/lub o różnych parametrach.

Na zdrowy rozsądek - gdyby kurtoza badała to samo, o wariancja, nie byłaby potrzebna. Tymczasem jej rolą jest określenie jak rozmieszczone są dane w ramach ich zmienności (wariancji) - w centralnej części blisko wartości oczekiwanej i z głównym źródłem wariancji w ogonach (K>>3)
- w centralnej części i w miarę równomiernie -> przez rozkład jednostajny -> aż do rozkładu typu U-shaped (0<K<3).

Jeśli wezmę dwa rozkłady normalne o różnych wariancjach, to ten o większej będzie bardziej płaski - to jasne, ale "rozmieszczenie wartości cechy" jest nadal takie samo jak w tym o niższej wariancji. A z kolei mogę mieć dwa rozkłady (które już nie są normalne), gdzie odchylenie std. będzie takie samo, ale rozmieszczenie wartości cechy - różne.

> Zauważ, że jak przyjmiesz
inną średnią niż zero dla rozkładu normalnego kurtoza się już nie zeruje.

Nie może się nie zerować (lub różnić od 3). Jest niezmiennicza wobec przekształceń liniowych.
I bardzo się cieszę. Ale to była droga do Rzymu przez Krym.

I dlatego prosiłem mądrzejszych ode mnie w zakresie statystyki o jakieś wsparcie w zakresie wygenerowania rozkładu o zadanej kurtozie przy jednoczesnym kontrolowaniu wariancji, by uzyskać diagramy takie (są tam wyniki obu miar), jak zamieściłem powyżej :)Adrian Olszewski edytował(a) ten post dnia 30.05.12 o godzinie 19:07

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:
Agnieszka K.:
Parametry kształtu są wtórne. We wzorze na gęstość występuje odchylenie st. i wariancja.

Stąd wynikł problem, że pomieszałem z miarą kształtu parametr kształtu, który jest niezależny od parametrów skali i położenia (nie jest ich funkcją). Innymi słowy nie "przesuwa" rozkładu i nie zmienia jego "szerokości" (wariancja zostaje zachowana). Parametry są tylko trzy, miar - całe mnóstwo.
nie ma się czym przejmować, w statystyce wszyscy wszystko mieszają. ja też coś tam w powyszych postach pomieszałam.
Wystarczy że zmienisz odchylenie st. automatycznie zmieniasz kształt wykresu gęstości............

Dobrze, ale jedna chwila. Przy okazji - jeśli bredzę, proszę o wyrozumiałość, jako nie matematyk :)

Dla rozkładu normalnego parzysty K-ty moment centralny jest powiązany z odchyleniem standardowym tak, że E(X-u)^k = (k-1)!!sd^k
Dla naszego przypadku E(x-u)^4 = 1*3*sd^4=3sd^4
ja też nie matematyk, ale coś to się nie zgadza., bo:
odchylenie st. jest pierwiastkiem z wariancji, jeżeli var=4 to st=2. czy E(X-u) to var?

Jeśli rośnie sd, to oczywiście rośnie także mk, bo oba są funkcją odchyleń od średniej w odpowiednich parzystych potęgach. I dla rozkładu normalnego stosunek 4tego momentu centralnego do kwadratu wariancji, czyli kurtoza, jest stały i wynosi 3 (którą to 3jkę odejmuje się by móc porównywać kurtozy innych rozkładów z kurtozą rnorm przez proste badanie znaku).
kurtoza jest też definiowana bez odjemnika 3. ta trójką "definiowano" spłaszczenie rozkładów, tak jak to przedstawiłeś na lewym rysunku.

Dzięki temu mogę dowolnie zmieniać wariancję (i wart. oczek.) jako parametr generatora rnorm, a kurtoza wygenerowanych danych nadal pozostanie równa 3. A co za tym idzie, nie mogę sterować kurtozą za pomocą generatora liczb z rozkładu normalnego, bo on utrzyma ją na stałym poziomie.
ale możesz generować też liczy nie z rozkładu normalnego a z dowolnego przedziału liczb rzeczywistych.
wtedy wartość oczekiwanie raczej nie będzie środkiem rozkładu, a rozkład nie będzie symetryczny.

Jedyne, co mogę zrobić, to skorzystać z rozkładu, w którym opisana relacja nie jest zachowana, np. wspomniany Pearsona VII rodzaju albo t-Studenta, gdzie kurtoza jest funkcją liczby stopni swobody. Albo kombinować z sumowaniem rozkładów z różnych rodzin i/lub o różnych parametrach.
muszę przypomieć sobie st, swobody. dawno z tego nie korzystałam.

Na zdrowy rozsądek - gdyby kurtoza badała to samo, o wariancja, nie byłaby potrzebna. Tymczasem jej rolą jest określenie jak rozmieszczone są dane w ramach ich zmienności (wariancji) - w centralnej części blisko wartości oczekiwanej i z głównym źródłem wariancji w ogonach (K>>3)
- w centralnej części i w miarę równomiernie -> przez rozkład jednostajny -> aż do rozkładu typu U-shaped (0<K<3).
Bo kurtoza nie jest wariancją.
wariancja jest miarą rozproszenia wartości zmiennej losowej.
kurtoza jest miarą koncentracji zmiennych wokół wartości oczekiwanej.
>
Jeśli wezmę dwa rozkłady normalne o różnych wariancjach, to ten o większej będzie bardziej płaski - to jasne, ale "rozmieszczenie wartości cechy" jest nadal takie samo jak w tym o niższej wariancji. A z kolei mogę mieć dwa rozkłady (które już nie są normalne), gdzie odchylenie std. będzie takie samo, ale rozmieszczenie wartości cechy - różne.
jeżeli wariancja jest mała (duża) to prawdopodobieństwo przyjmowania przez zmienną wartości odległych od wartości oczekiwanej jest małe (duże).
odchylenie st. określa zróżnicowanie badanej zmiennej, czyli jak bardzo jej wartość odbiega od wartości oczekiwanej.
mechanika to obrazuje w dość łopatologiczny sposób. wariancja to moment bezwładności. odchylenie st. to moment statyczny a kurtoza to koncentracja masy wokół środka ciężkości. masa nie musi być rozmieszczona w sposób jednorodny.
p.s. wieczorem doczytam o st. swobody. bo wiadomości z netu uważam za dość kontrowersyjne. muszę znaleźć jakąś moondrą książkę. bo masz racje to wszystko trzeba na zdrowy chłopski rozum.
o:)) nastąpiły zmiany w poście. nie zdążyłam na czas.:)))Agnieszka K. edytował(a) ten post dnia 30.05.12 o godzinie 19:35

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

>Agnieszka K. edytował(a) ten post dnia 30.05.12 o godzinie 19:34

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Agnieszka K.:
ja też nie matematyk

Ale widzę, że inżynier, więc praktyk :) Ja zajmuję się zawodowo statystyką medyczną od kilku lat, ale cóż - czasem potrzeba mądrej głowy, która pokieruje, zwłaszcza, jeśli to płeć piękna :)

>, ale coś to się nie zgadza., bo:
odchylenie st. jest pierwiastkiem z wariancji, jeżeli var=4 to st=2. czy E(X-u) to var?

Jeśli k=2 to tak. 2 moment centralny to wariancja E(x-E(x))^2
kurtoza jest też definiowana bez odjemnika 3. ta trójką "definiowano" spłaszczenie rozkładów, tak jak to przedstawiłeś na lewym rysunku.

Ta trójka to dokładnie współczynnik proporcjonalności między IV m. centr a kwadratem wariancji dla rozkładu normalnego.

Excess, czyli K-3 wprowadzono dla wygody w pewnych obliczeniach a "na co dzień" łatwiej zapamiętać, że K rnorm to 0, czyli rozkład mezokurtyczny, K<0 - platykurtyczny, K>0 - leptokurtyczny.

Na lewym wykresie kurtozy są wszędzie takie same, równe 0, zmieniają się tylko wariancje. Na prawym - z kolei wariancje są stałe, zaś kurtozy różne.
ale możesz generować też liczy nie z rozkładu normalnego a z dowolnego przedziału liczb rzeczywistych.
wtedy wartość oczekiwanie raczej nie będzie środkiem rozkładu, a rozkład nie będzie symetryczny.

Ech, nie rozumiemy się :)
Ja pytałem w jaki sposób losować. Jakiego generatora użyć, by uzyskać potrzebne mi rezultaty.
Student ma trochę za mało widoczne zmiany kurtozy. Pearson też :/ A mieszanie rozkładu normalnego i jednostajnego + odpowiedni dobór wsp. wygładzania estymatora jądrowego dało mi fajne rezultaty.
muszę przypomieć sobie st, swobody. dawno z tego nie korzystałam.

Wiele rozkładów je ma, np. Chi2, t-Studenta, F Snedecora.
Bo kurtoza nie jest wariancją.
wariancja jest miarą rozproszenia wartości zmiennej losowej.
kurtoza jest miarą koncentracji zmiennych wokół wartości oczekiwanej.

Wiem, czym są :) Piszę to po to, by pokazać, że kurtoza nie parametryzuje rozkładu normalnego :)
nie musi być rozmieszczona w sposób jednorodny.

Wtedy, w przypadku jednowymiarowym, to mamy do czynienia ze skośnością :) (trzeci moment centralny). W przypadku powierzchni lub objętości to pewnie jakieś macierzowe uogólnienie, "koskośność".
p.s. wieczorem doczytam o st. swobody. bo wiadomości z netu uważam za dość kontrowersyjne. muszę znaleźć jakąś moondrą książkę. bo masz racje to wszystko trzeba na zdrowy chłopski rozum.

Będzie w praktycznie każdym podręczniku do statystyki, w którym opisano podstawowe rozkłady.

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:
Agnieszka K.:
ja też nie matematyk

Ale widzę, że inżynier, więc praktyk :) Ja zajmuję się zawodowo statystyką medyczną od kilku lat, ale cóż - czasem potrzeba mądrej głowy, która pokieruje, zwłaszcza, jeśli to płeć piękna :)
co dwie glłowy to nie jedna:)))
Mnie to tylko zastanawia po co Ci te wykresy? Ja chcąc nie chcąc muszę stosować statystykę bo za jej pomocą rozwiązuje się wiele zagadnień, lecz nigdy nie miałam potrzeby generowania takich rozkładów. Zajęcia ze studentami? To daruj sobie oni i tak nie załapią o co chodzi. Będą się paczyć tymi nieobecnymi paczętami w ekran i udawać, że rozumieją.

>, ale coś to się nie zgadza., bo:
odchylenie st. jest pierwiastkiem z wariancji, jeżeli var=4 to st=2. czy E(X-u) to var?

Jeśli k=2 to tak. 2 moment centralny to wariancja E(x-E(x))^2
a to wzorki się zgadzają. ależ czego to ludzie nie wymyślą.
kurtoza jest też definiowana bez odjemnika 3. ta trójką "definiowano" spłaszczenie rozkładów, tak jak to przedstawiłeś na lewym rysunku.

Ta trójka to dokładnie współczynnik proporcjonalności między IV m. centr a kwadratem wariancji dla rozkładu normalnego.

Excess, czyli K-3 wprowadzono dla wygody w pewnych obliczeniach a "na co dzień" łatwiej zapamiętać, że K rnorm to 0, czyli rozkład mezokurtyczny, K<0 - platykurtyczny, K>0 - leptokurtyczny.
coś takiego jest.

Na lewym wykresie kurtozy są wszędzie takie same, równe 0, zmieniają się tylko wariancje. Na prawym - z kolei wariancje są stałe, zaś kurtozy różne.
ok. ale takie wykresy o ile się nie mylę przedstawiano opisując te trzy powyższe mezo, platy i lepto.
ale możesz generować też liczy nie z rozkładu normalnego a z dowolnego przedziału liczb rzeczywistych.
wtedy wartość oczekiwanie raczej nie będzie środkiem rozkładu, a rozkład nie będzie symetryczny.

Ech, nie rozumiemy się :)
Ja pytałem w jaki sposób losować. Jakiego generatora użyć, by uzyskać potrzebne mi rezultaty.
Student ma trochę za mało widoczne zmiany kurtozy. Pearson też :/ A mieszanie rozkładu normalnego i jednostajnego + odpowiedni dobór wsp. wygładzania estymatora jądrowego dało mi fajne rezultaty.
oj, to ze się słabo rozumiemy to na pewno. kiedyś miałam propozycje analiz statystycznych z innych dziedzin, ale trudno mi było dogadać :)))
to wygeneruj liczby losowe z z rozkładu gausa jeden o węższym przedziale np(-1,1) a drugi z przedziału (-5,5) i dodaj do siebie. otrzymasz wtedy zagęstrzenie zmiennych wokół wartości centralnej.
muszę przypomieć sobie st, swobody. dawno z tego nie korzystałam.

Wiele rozkładów je ma, np. Chi2, t-Studenta, F Snedecora.
ale co ma kurtoza do stopni swobody? tego nie łapie.
Bo kurtoza nie jest wariancją.
wariancja jest miarą rozproszenia wartości zmiennej losowej.
kurtoza jest miarą koncentracji zmiennych wokół wartości oczekiwanej.

Wiem, czym są :) Piszę to po to, by pokazać, że kurtoza nie parametryzuje rozkładu normalnego :)
oj, chyba jest wskaźnikiem spłaszczenia.
nie musi być rozmieszczona w sposób jednorodny.

Wtedy, w przypadku jednowymiarowym, to mamy do czynienia ze skośnością :) (trzeci moment centralny). W przypadku powierzchni lub objętości to pewnie jakieś macierzowe uogólnienie, "koskośność".
nie, to chodzi o koncentracje zmiennych wokół wartości centralnej, czyli idąc do środka rozkładu, który może być symetryczny robi się coraz gęściej. zresztą tu już poruszamy się w dwóch wymiarach, mamy dwie osie wykresu. w większych wymiarach działają również całki. skośność to jeszcze co innego.
p.s. wieczorem doczytam o st. swobody. bo wiadomości z netu uważam za dość kontrowersyjne. muszę znaleźć jakąś moondrą książkę. bo masz racje to wszystko trzeba na zdrowy chłopski rozum.

Będzie w praktycznie każdym podręczniku do statystyki, w którym opisano podstawowe rozkłady.
dzieki, ale jeszcze nie dotarłam do książek. jednak w necie znalazłam coś nie coś o rozkładzie Gaussa i uważam, że jest to dobrze napisane. ba nawet jestem zachwycona jest i entropia i funkcja charakterystyczna oraz jest podana literatura.
http://pl.wikipedia.org/wiki/Rozk%C5%82ad_normalny

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Agnieszka K.:
Mnie to tylko zastanawia po co Ci te wykresy? Ja chcąc nie chcąc

:) Oprócz analiz prowadzę także szkolenia ze statystyki, zwykle dla lekarzy.
to wygeneruj liczby losowe z z rozkładu gausa jeden o węższym przedziale np(-1,1) a drugi z przedziału (-5,5) i dodaj do siebie. otrzymasz wtedy zagęstrzenie zmiennych wokół wartości centralnej.

Bingo, jak spojrzysz do mojego pierwszego posta to tak właśnie zrobiłem :)
oj, chyba jest wskaźnikiem spłaszczenia.

Dokładnie, ale to miara, nie parametr. Parametr to coś, od czego jawnie zależy funkcja gęstości prawdopodobieństwa. Są 4 parametry (mogą występować w dowolnej konfiguracji): położenia, skali, kształtu oraz stopnie swobody. Ten ostatni, jeśli występuje, jest uwikłany funkcyjnie z pozostałymi (zwykle kształt i skala). Nie należy ich kojarzyć wprost z wartością oczekiwaną ani wariancją, choć jest tak np. dla rnorm. Parametry mogą występować w rozkładzie w kilku "instancjach", np. F - 2 x stopnie swobody, beta - 2 x kształt.
ale co ma kurtoza do stopni swobody? tego nie łapie.

Jest taki ciekawy rozkład t Gosseta (pseudonim "Student"), który ma jeden tylko parametr - stopnie swobody uwikłany w kurtozę i wariancję
http://pl.wikipedia.org/wiki/Rozk%C5%82ad_Studenta

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:
Agnieszka K.:
Mnie to tylko zastanawia po co Ci te wykresy? Ja chcąc nie chcąc

:) Oprócz analiz prowadzę także szkolenia ze statystyki, zwykle dla lekarzy.
interesujące lecz raczej ciężkie zajęcie:)
oj, chyba jest wskaźnikiem spłaszczenia.

Dokładnie, ale to miara, nie parametr. Parametr to coś, od czego jawnie zależy funkcja gęstości prawdopodobieństwa. Są 4 parametry (mogą występować w dowolnej konfiguracji): położenia, skali, kształtu oraz stopnie swobody. Ten ostatni, jeśli występuje, jest uwikłany funkcyjnie z pozostałymi (zwykle kształt i skala). Nie należy ich kojarzyć wprost z wartością oczekiwaną ani wariancją, choć jest tak np. dla rnorm. Parametry mogą występować w rozkładzie w kilku "instancjach", np. F - 2 x stopnie swobody, beta - 2 x kształt.
oj, może odpocznij od tej nieszczęsnej kurtozy bo to jakieś poplątanie z pomieszaniem.
P.S. zmień oznaczenia w rysunku po lewej bo kurtoza tylko w jednym przypadku jest równa zero.Agnieszka K. edytował(a) ten post dnia 03.06.12 o godzinie 23:03

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Agnieszka K.:
oj, może odpocznij od tej nieszczęsnej kurtozy bo to jakieś poplątanie z pomieszaniem.

Nie ma żadnego pomieszania, tylko trzeba to przetrawić.
P.S. zmień oznaczenia w rysunku po lewej bo kurtoza tylko w jednym przypadku jest równa zero.

Obawiam się, że pomimo całej poprzedniej dyskusji jednak się nie zrozumieliśmy. Dlatego właśnie widzę, że takie szkolenia są konieczne. Mnóstwo osób myli kurtozę z wariancją, ale to wina podręczników, które nie podkreślają tej różnicy.

Fakt, że jeśli na wykresie jest jeden spłaszczony rozkład, to może być trudno powiedzieć czy to wysoka wariancja czy niska kurtoza, zwłaszcza, że można przecież manipulować skalą wykresu :]
Choć wiadomo z drugiej strony, że niska kurtoza będzie się charakteryzować "spłaszczeniem" wierzchołka z jednoczesnym "rozdęciem" jego reszty (mówiąc obrazowo - to jak nadepnięcie worka wypełnionego wodą, gdzie objętość jest ciągle stała) a nie "przydeptaniem z rozjazdem". Jednak gdy jest nałożone na siebie kilka rozkładów, to natychmiast widać jaka jest ich szerokość i kształt względem siebie.

Liczby, które widzisz na wykresie przy literze K zwraca funkcja licząca kurtozę, nie są wpisane na sztywno. Robię to tak, by potem na szkoleniu móc zapuścić kod R, który wygeneruje takie wykresy i obliczy odpowiednie miary, by uczestnicy kursu przekonali się na własne oczy, jak to działa. Widzisz tam nawet minus zero wynikający z zaokrągleń (np. K=-0.0002). Spójrz na szerokość wykresów, widzisz, że ten o największej wariancji nie mieści się nawet na wykresie, natomiast na prawym wykresie wszystkie są o jednakowej szerokości.

Przy okazji - w celach "treningowych" przygotowałem kilka zbiorów danych. Warto się przyjrzeć im oraz wartościom miar.

Obrazek


A tutaj cytat z kursu statystyki prof. Wuenscha:
plik Worda | Szybki podgląd Google'a

It is easy to confuse low kurtosis with high variance, but distributions with identical kurtosis can differ in variance, and distributions with identical variances can differ in kurtosis. Here are some simple distributions that may help you appreciate that kurtosis is, in part, a measure of tail heaviness relative to the total variance in the distribution (remember the “ s^4 ” in the denominator).

Obrazek

When I presented these distributions to my colleagues and graduate students and asked them to identify which had the least kurtosis and which the most, all said A has the most kurtosis, G the least (excepting those who refused to answer). But in fact A has the least kurtosis ( - 2 is the smallest possible value of kurtosis) and G the most. The trick is to do a mental frequency plot where the abscissa is in standard deviation units. In the maximally platykurtic distribution A, which initially appears to have all its scores in its tails, no score is more than one s away from the mean - that is, it has no tails! In the leptokurtic distribution G, which seems only to have a few scores in its tails, one must remember that those scores (5 & 15) are much farther away from the mean (3.3 s ) than are the 5's & 15's in distribution A. In fact, in G nine percent of the scores are more than three s from the mean, much more than you would expect in a mesokurtic distribution (like a normal distribution), thus G does indeed have fat tails.Adrian Olszewski edytował(a) ten post dnia 04.06.12 o godzinie 17:03

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:
Agnieszka K.:
oj, może odpocznij od tej nieszczęsnej kurtozy bo to jakieś poplątanie z pomieszaniem.

Nie ma żadnego pomieszania, tylko trzeba to przetrawić.
ale, tu nie ma co trawić. tu można jedynie domyślać się co autor miał na myśli i dojść do wniosku ze ma braki w podstawach matematyki, bo przecież statystyka jest działem matematyki.
P.S. zmień oznaczenia w rysunku po lewej bo kurtoza tylko w jednym przypadku jest równa zero.

Obawiam się, że pomimo całej poprzedniej dyskusji jednak się nie zrozumieliśmy. Dlatego właśnie widzę, że takie szkolenia są konieczne. Mnóstwo osób myli kurtozę z wariancją, ale to wina podręczników, które nie podkreślają tej różnicy.
Takie szkolenia zapewne są konieczne, jednak muszą być prowadzone przez osoby kompetentne. Kurtozę równą zero czy trzy ma tylko rozkład Gaussa z parametrami N(0,1). Więc jakim cudem wygenerowałeś trzy różne rozkłady mające kurtozę równą zero i inne parametry niż rozkład Gaussa? To nie jest wina podręczników, ja osobiście nie spotkałam akademickich podręczników w których te pojęcia są pomieszane, to raczej wina czytających.

Fakt, że jeśli na wykresie jest jeden spłaszczony rozkład, to może być trudno powiedzieć czy to wysoka wariancja czy niska kurtoza, zwłaszcza, że można przecież manipulować skalą wykresu :]
dla kogoś, kto nie wie czym jest wariancja to zapewne jest nawet nie tyle co trudne a wręcz nie możliwe. manipuluj dalej a otrzymasz to co chcesz, ot taka właściwość statystyki. jednak prawdziwe to nie będzie.

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Agnieszka K.:
Takie szkolenia zapewne są konieczne, jednak muszą być prowadzone przez osoby kompetentne.

Jak może podważać czyjeś kompetencje osoba, która po zapoznaniu się z przedstawionymi wzorami, wynikami symulacji oraz odniesieniami do źródeł wypisuje takie rzeczy? :)
Kurtozę równą zero czy trzy ma tylko rozkład Gaussa z parametrami N(0,1)

Proszę wykazać, że rozkład Gaussa inny, niż standardowy nie ma kurtozy równej zero (i odebrać jakąś wielką nagrodę z dziedziny matematyki) :)

Dla rozkładu normalnego o dowolnych parametrach:
E(X-u)^k = (k-1)!!sd^k, a więc E(x-u)^4 = 1*3*sd^4=3sd^4
zatem K=m4/sd^4 = 3
Excess (czyli K-3) = 0
wygenerowałeś trzy różne rozkłady mające kurtozę równą zero i inne parametry niż rozkład Gaussa?

It's magic :D Napisałem już do autora funkcji "rnorm", że jest matematycznym indolentem i zaimplementował źle tę funkcję, bo ciągle generuje liczby z rozkładu o kurtozie równej zero :x
podręczników w których te pojęcia są pomieszane, to raczej wina czytających.

Oj, obawiam się, że było ich przeczytanych niewiele :) Przed chwilą nie mogłaś do nich dotrzeć, a teraz "nigdy się nie spotkałaś"... :)
nie tyle co trudne a wręcz nie możliwe. manipuluj dalej a otrzymasz to co chcesz, ot taka właściwość statystyki. jednak prawdziwe to nie będzie.

Początkowo zastanawiałem się, czy Ty w ogóle rozumiesz, co czytasz... Myślałem, że po prostu nie rozumiesz, więc tłumaczyłem, ale teraz już wiem, że po prostu nie należy karmić trolla i straciłem tylko czas... :)Adrian Olszewski edytował(a) ten post dnia 07.06.12 o godzinie 01:24
Michał Bojanowski

Michał Bojanowski socjolog, analityk

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Proponuję, żebyśmy jednak starali się trzymać poziom dyskusji i unikali "wycieczek" na temat kompetencji innych użytkowników grupy.
Maciej B.

Maciej B. Doktorant

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Popieram Michała Bojanowskiego, to forum jest stworzone do dyskusji merytorycznej a nie wskazywania braków i punktowania (zwłaszcza jeżeli nie słusznie) osoby, która ten temat założyła.

Wyniki, które przedstawił Adrian Olszewski jednoznacznie rozwiązują problem. :)

Proponuję albo zamknąć temat albo tzn. 'hejterskie' posty usuwać.

konto usunięte

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Adrian Olszewski:
Agnieszka K.:
Takie szkolenia zapewne są konieczne, jednak muszą być prowadzone przez osoby kompetentne.

Jak może podważać czyjeś kompetencje osoba, która po zapoznaniu się z przedstawionymi wzorami, wynikami symulacji oraz odniesieniami do źródeł wypisuje takie rzeczy? :)
Cóż, może bo popełniłeś błąd.
Kurtozę równą zero czy trzy ma tylko rozkład Gaussa z parametrami N(0,1)

Proszę wykazać, że rozkład Gaussa inny, niż standardowy nie ma kurtozy równej zero (i odebrać jakąś wielką nagrodę z dziedziny matematyki) :)

Dla rozkładu normalnego o dowolnych parametrach:
E(X-u)^k = (k-1)!!sd^k, a więc E(x-u)^4 = 1*3*sd^4=3sd^4
zatem K=m4/sd^4 = 3
Excess (czyli K-3) = 0
Na wstępie przepraszam, że palnęłam jak postrzelona bzdurę o tym że tylko rozkład Gaussa N(0,1) ma kurtozę równą zero. Każdy rozkład normalny ma kurtozę równą zero. Ale w wyniku naszej burzliwej dyskusji wszystko mi się pomieszało. Nasza dyskusja stała się zbyt "osobista" a tak nie powinno być.
Na szczęście już wszystko mi się ułożyło, dlatego pragnę wyjaśnić gdzie popełniłeś błąd. Na pierwszym rysunku prezentujesz rozkłady normalne o różnym odchyleniu st. i kurtozie równej zero i tu jest niby ok. Jednak wkrada się tu nieścisłość, bo o spłaszczeniu rozkładu mówimy w odniesieniu do rozkładu normalnego o takich samych parametrach( średnia, odchylenie) jak rozpatrywany rozkład, a nie w odniesieniu do trzech różnych rozkładów normalnych. Tylko rysunek drugi oddaje o co chodzi z kurtozą, pierwszy jest co najmniej kontrowersyjny.
It's magic :
...
karmić trolla i straciłem tylko czas... :)
Nie mam urazy. Pozdrawiam.

Temat: Jak wygenerowanie rozkłady o zadanej kurtozie?

Lewy wykres prezentuje rozkłady o różnej wariancji i kurtozie równej zero (i są to wszystko rozkłady normalne). Prawy o takiej samej wariancji i różnych kurtozach (i to są różne rozkłady, w tym prawie jednostajny). Celem tych obu wykresów jest zobrazowanie różnic w zachowaniu się krzywej gęstości w tych dwóch sytuacjach - przy różnych wariancjach i różnych kurtozach. I dokładnie to wytłumaczyłem w poprzednich postach.

Co do przebiegu dyskusji - tłumaczyłem przecież spokojnie i cierpliwie przez kilka postów jedno i to samo, bo zależało mi, by to rzetelnie wyjaśnić. Proszę zatem nie mówić o "burzliwości", bo nikt tu nie gryzł ani nie wystawiał ocen (przynajmniej nie ja).

Pomylić się każdy może, nikt nie jest omnibusem. Tyle tylko, że w razie niepewności, warto wpierw zgłębić temat, a nie zarzucać komuś brak kompetencji i podstawowej wiedzy, samemu nie mając racji. Tym bardziej gdy się samemu co drugi post przyznaje, że coś tam się "pomieszało" albo "faktycznie jest coś takiego" czy "czego to ludzie nie wymyślą". Nie wspomnę o zarzucie "braku czytania ze zrozumieniem książek" podczas, gdy samemu albo ma się z tym poważny problem, albo też kompletnie olewa się to, co zostało napisane - ale wtedy zakładam złą wolę i zwyczajny trolling.

Czego? Urazy? o ludu...

Dla mnie temat jest zamknięty, bo ta dyskusja nie była moim celem. Wdałem się w nią, by wyjaśnić nieporozumienia.

--------------

PS: Znalazłem chwilę na przyjrzenie się funkcji generującej Johnsona. Bardzo fajna sprawa. Ciężko kontroluje się trzeci i czwarty moment. Trzeci - w okolicy zera, czwarty przy wyższych wartościach. Jednak za którymś losowaniem można dostać oczekiwane efekty.


fit = JohnsonFit(t=c(0, 1, 0, 10), moment="use");
data = rJohnson(1000, fit);
plot(density(data, bw=.7), col="green", xlim=c(-4,4));
text(adj=c(0,0), -4, 0.35, sprintf("sd=%.2f, śr=%.2f, K=%.2f", sd(data), mean(data), kurtosis(data)+3), col="green")

fit = JohnsonFit(t=c(0, 1, 0, 3), moment="use");
data = rJohnson(1000, fit);
lines(density(data, bw=.7), col="blue");
text(adj=c(0,0), -4, 0.33, sprintf("sd=%.2f, śr=%.2f, K=%.2f", sd(data), mean(data), kurtosis(data)+3), col="blue")

fit = JohnsonFit(t=c(0, 1, 0, 1.7), moment="use")
data = rJohnson(1000, fit)
lines(density(data, bw=.7), col="red")
text(adj=c(0,0), -4, 0.31, sprintf("sd=%.2f, śr=%.2f, K=%.2f", sd(data), mean(data), kurtosis(data)+3), col="red")



Obrazek
Adrian Olszewski edytował(a) ten post dnia 09.06.12 o godzinie 16:31



Wyślij zaproszenie do