Wie probiert man aus der Cantor-Distribution?

19

Was wäre der beste Weg, um von Cantor Distribution zu probieren ? Es hat nur cdf und wir können es nicht invertieren.

Tim
quelle
4
Eigentlich hat es jemand in Mathematik gefragt: math.stackexchange.com/questions/1115907/…
RUser4512
Nachfolgend einige interessante Fragen: Was ist die Standardabweichung? Was ist die momenterzeugende Funktion? Wie vergleichen sie sich mit ihren Kollegen für die Uniform -Verteilung? :-)(0,1)
whuber
5
Ich mag die Endlosschleife, die ihr erstellt habt, indem ihr auf den Beitrag von math.stackexchange verweist, der hierher zurückführt: p
Tasos Papastylianou

Antworten:

23

Einfach: Beispiel aus einer Uniform -Verteilung und Rekodierung von binär nach ternär, wobei jede "1" als "2" interpretiert wird. (Dies ist der inverse Wahrscheinlichkeitstransformationsansatz: er invertiert tatsächlich die CDF!)(0,1)

Zahl

Hier ist eine RImplementierung, die so geschrieben ist, dass sie sich problemlos auf nahezu jede Computerumgebung übertragen lässt.

binary.to.ternary <- function(x) {
  y <- 0
  x <- round(2^52 * x)
  for (i in 1:52) {
    y <- y + 2*(x %% 2)
    y <- y/3
    x <- floor(x/2)
  }
  y
}

n <- 1000
x <- runif(n)
y <- binary.to.ternary(x)
plot(ecdf(y), pch=".")
whuber
quelle
3
Zu Beginn dieses Jahres begann ich eine etwas vollere Umsetzung auf github.com/Henrygb/CantorDist.R mit Funktionen rCantor(), qCantor(), pCantor()und ein weniger aussagekräftigdCantor()
Henry
1
@Henry Was würde dcantorimplementieren? Wie Tim bemerkt, hat diese Verteilung keine Dichte. Es hat auch keine diskreten Atome. Es ist das archetypische Beispiel einer kontinuierlichen, aber nicht absolut kontinuierlichen Verteilung. (Ich mag die Implementierung von qcantorBTW - es ist wahrscheinlich schnell aufgrund seiner Ausnutzung der Matrixmultiplikation.)
whuber
1
Wir müssen bedenken, dass es sich nur um eine endliche Annäherung an die tatsächliche Verteilung handelt. Angenommen, wir hatten Zahlen mit einer Genauigkeit von 10 ternären Ziffern (in der Praxis sind sie länger), und wir haben 0,0222020002 generiert, um eine Variable "darzustellen", deren Ziffern sich weiter erstrecken. Während der gleiche Kommentar für jedes reelle rv mit einem stetigen rv gilt, sind alle "dargestellten" Werte, für die die endliche Längenannäherung stehen könnte, ebenfalls "in der Menge". In der eigentlichen Cantor-Distribution befinden sich fast alle "Fortsetzungen" dieser zehnstelligen Folge nicht in der Menge. ... ctd
Setzen Sie Monica
1
@whuber Ich habe klar anerkannt, dass jede Methode zur Erzeugung von Zufallszahlen in meinem zweiten Satz eine endliche Genauigkeit hat. Dass Sie sich dafür entschieden haben, es zu wiederholen, und die Betonung, die Sie ihm gaben, legt nahe, dass Sie meinen eigentlichen Punkt dort verpasst haben; Wenn ich eine stetige Variation mit endlicher Genauigkeit darstelle, sind die realen Werte, die eine solche endliche Approximation darstellen könnte , "in der Menge", aus der wir generieren möchten. Wenn ich eine Variable wie diese mit endlicher Genauigkeit darstelle, sind die realen Werte, die eine solche endliche Annäherung darstellen könnte, fast alle nicht in der Menge. Es ist eher ein anderer Fall. ... ctd
Glen_b -Reinstate Monica
1
ctd ... keine Kritik an Ihrem Beitrag wurde impliziert; Dies war ein Punkt, den die Leser möglicherweise übersehen und berücksichtigen möchten, insbesondere wenn sie versuchen, Eigenschaften der Cantor-Menge durch Simulation daraus abzuleiten.
Glen_b -Reinstate Monica