Seite 1 von 2
Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Do Aug 12, 2021 12:59 pm
von 8ZRbP
Hallo,
ich möchte mit möglichst einfachen (!) Mitteln zwei Variablen erstellen, die miteinander korrelieren.
Also in Pseudocode ausgedrückt:
Code: Alles auswählen
zufallszahlenpaarKorreliert(r, Wertebereich_var1(x,y), Wertebereich_var2(a,b) n)
Die o.g. Funktion soll also zwei Variablen mit n Fällen generierten, wobei var1 Zahlen im Wertbereich (x,y) und var2 Zahlen im Wertebreich (a,b) annehmen darf. var1 und var2 sollen bivariat mit dem Korrelationskeffizientenr korrelieren.
Möglichst sollten beide Zahlen normalverteilt sein. Wenn ich zusätzlich die Größe der Varianz / SD einstellen kann, ist das sicher kein Nachteil, jedoch auch kein Muss!
Besten Dank und Grüße,
8ZRbP
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Do Aug 12, 2021 1:58 pm
von bigben
Hallo 8ZRbP,
long time no see. Schön, dass Du wieder da bist.
8ZRbP hat geschrieben: Do Aug 12, 2021 12:59 pmich möchte mit möglichst einfachen (!) Mitteln zwei Variablen erstellen, die miteinander korrelieren.
Das Einfache ist nicht immer das beste. Das einfachste wäre es, zunächst ein normalverteiltes a zu ziehen (da muss man sich noch überlegen wie man sicherstellt, dass das zwischen unterer und oberer Grenze liegt, weil diese Forderung zur Normalverteilung streng genommen nicht passt) und als zweite Variable b wählt man die Summe aus a und einer weiteren normalverteilten Variable, die ich hier mal Epsilon genannt habe. Könnte dann im ersten Anlauf so aussehen:
Code: Alles auswählen
n <- 50
epsilon <- rnorm(n, sd = 1)
a <- rnorm(n = n, mean = 0, sd = 2)
b <- a + epsilon
plot(a, b)
cor(a, b)
Je nachdem, wie man die Standardabweichung von a wählt und wie man die Standardabweichung von epsilon wählt wird der Korrelationskoeffizient größer oder kleiner. Wenn Du einmal a und b brauchst, kann man das durch Herumprobieren anpassen, wenn das eine Funktion mit einem fest vorgegebenen Korrelationskoeffizienten werden soll, braucht man mehr Mathematik oder weitere Funktionen.
Ansonsten käme vielleicht das package mvnorm infrage, das es mit der Funktion rmvnorm erlaubt, Stichproben aus multivariaten Normalverteilungen mit beliebiger Kovarianzmatrix zu ziehen.
Ich rechne damit, dass von den anderen noch mehr Vorschläge kommen.
LG,
Bernhard
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Do Aug 12, 2021 3:54 pm
von schubbiaschwilli
Gude!
Du meinst eine Cholesky-Zerlegung (
https://de.wikipedia.org/wiki/Cholesky-Zerlegung)?
Kann man selbst bauen, ich nutze sowas mit dem Paket MASS.
Code: Alles auswählen
require(MASS)
r <- 0.45678
out <- mvrnorm(n=5000, mu=c(0,0), Sigma=matrix(c(1,r,r,1), ncol=2), empirical=TRUE)
cor(out)
Dank&Gruß
Schubbiaschwilli
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Do Aug 12, 2021 4:19 pm
von bigben
Das war dann wohl die klar bessere Antwort

Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Do Aug 12, 2021 7:10 pm
von schubbiaschwilli
Noch nie von der Cholesky-Zerlegung gehört?
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Fr Aug 13, 2021 7:52 am
von bigben
Du bist mir nicht böse, wenn ich mit dem aktuellen xkcd-Comic antworte?

(
https://xkcd.com/2501 )
GLG,
Bernhard
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Fr Aug 13, 2021 10:59 am
von Athomas
Im Interview mit der Zeit betonte der Erziehungswissenschaftler Elmar Tenorth von der Berliner Humboldt-Universität, dass Mathematik eine unverzichtbare Kulturtechnik sei. "Wenn man über die nicht verfügt, ist man wirklich kulturbehindert", sagte Tenorth. Dem wird aber gerade in Deutschland nur wenig Beachtung geschenkt. So ist es beispielsweise die Auffassung weit verbreitet, dass ein gebildeter Mensch in den Klassikern der Weltliteratur bewandert sein muss, während ein mangelndes Verständnis von Mathematik und den darauf aufbauenden Naturwissenschaften mit einem Scherz abgetan wird.
https://winfuture.de/news,76284.html

Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Fr Aug 13, 2021 12:57 pm
von bigben
ebenda:
Laut einer repräsentativen Studie, die die Wochenzeitung Die Zeit (kommende Ausgabe) gemeinsam mit der Stiftung Rechnen in Auftrag gegeben hat, kann die Hälfte der Deutschen aber nicht einmal problemlos ausrechnen, wie viele Eimer Farbe sie zum Streichen eines vorgegebenen Kellerraums braucht.
So bin ich damals auf das Paket
broom gekommen: Ich wolle mein Zimmer streichen und dachte, der Name sei eine Zusammenziehung von
brush und
room. Das Zimmer ist bis heute nicht gestrichen.
Da für die Rechenkompetenz maßgeblich der Mathematik-Unterricht verantwortlich ist, nehmen die Wissenschaftler, die die Untersuchung durchführten, in erster Linie die Schulen in die Pflicht
Im Abitur hatte ich damals 15 Punkte in Mathe, aber damals gab es weder tidyverse noch data.table. Wie hätten die Lehrer uns da Rechnen beibringen sollen? Also nehmt bitte Rücksicht auf mich und schreibt einfach etwas langsamer.
LG,
X
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Fr Aug 13, 2021 7:18 pm
von schubbiaschwilli
Gude!
War nicht despektierlich gemeint - ich glaube, du bist Arzt (oder?) und ich hätte bei deiner statischen (Aus)Bildung (also, was ich hier von dir lese) darauf gewettet, dass du die Cholesky-Zerlegung kennst - Ich meine, das Thema wurde in meinem Studium gefühlt in jeder 3. Vorlesung erwähnt - Obwohl wahrscheinlich nie jemand damit selbst gerechnet hat - Gibt halt Software.
bigben hat geschrieben: Fr Aug 13, 2021 12:57 pmIm Abitur hatte ich damals 15 Punkte in Mathe
Ich hab' mein schriftliches Mathe-Abi total versaut - Totaler Blackout, ich saß da, und wusste gar nichts - Ich hab' aber Wirtschaftsabi gemacht, und da war es..., naja, obwohl mir da schon klar war, dass ich dann Mathe studieren wollte (was ich dann auch gemacht habe) - Aber für Mathe gab's keinen NC, dass hat dann da auch keinen Interessiert. Das Wirtschaftsabi hat mir übrigens sehr viel gebracht: Ich wollte danach keine BWL, VWL oder so mehr studieren - Also alles richtig gemacht.
Gruß
Y
Re: Erstellung zweier korrelierter Zufallsvariablen
Verfasst: Fr Aug 13, 2021 7:22 pm
von schubbiaschwilli
Gude!
Mathe-Kenntnisse sind in Deutschland katastrophal
Och, ich verdiene teilweise mein Geld damit - Wenn man einen einfachen Dreisatz oder Prozentrechnung als "Mathe-Kenntnisse" bezeichnen möchte (für mich ist das noch 'Rechnen' - Ohne das ich das jetzt lächerlich machen möchte) - Und das teilweise mal gar nicht wenig.
Deswegen:
