Data Simulation
Verfasst: Sa Okt 10, 2020 3:32 pm
Hallo allerseits
Ich würde gerne ein Dataset von 10000 Firmen erstellen. Dabei soll für jede Firma der jährliche Return im Dataset enthalten sein und das über einen Zeitraum von 70 Jahren. Diese jährliche Return soll normalverteilt sein. Wenn ich folgenden Code benutze, komme ich der Lösung ganz nahe (übrigens benutze ich das package "fabricatR"):
Das sieht dann ungefähr so aus:
Das Problem, dass ich habe , ist, dass für mein Unternehmen i der "yearly return" für sowohl für Jahr 1 als auch Jahr 2 bis Jahr 70 eins zu eins identisch ist. Das ist jedoch genau das, was ich nicht will. Ich will dass, nach jedem Jahr der "yearly return" für jedes Unternehmen i wieder random normalverteilt wird, sodass ich unterschiedliche Werte habe. Ich suche jetzt schon seit Stunden nach einer Lösung, kann mir jemand vielleicht helfen?
Vielen Dank im Vorraus!
Ich würde gerne ein Dataset von 10000 Firmen erstellen. Dabei soll für jede Firma der jährliche Return im Dataset enthalten sein und das über einen Zeitraum von 70 Jahren. Diese jährliche Return soll normalverteilt sein. Wenn ich folgenden Code benutze, komme ich der Lösung ganz nahe (übrigens benutze ich das package "fabricatR"):
Code: Alles auswählen
panel <- fabricate(
companies = add_level(N = 10000, yearly_return = rnorm(N, 0.07, 0.5)),
years = add_level(N = 70, nest = FALSE),
observations = cross_levels(
by = join(companies, years)))
Das sieht dann ungefähr so aus:
Code: Alles auswählen
Companies Yearly Return Year Observation
1 00001 -0.101098485 01 000001
2 00002 -0.265640292 01 000002
3 00003 -0.578032717 01 000003
4 00004 0.109449754 01 000004
5 00005 0.244000939 01 000005
6 00006 0.020285241 01 000006
7 00007 -0.517360455 01 000007
8 00008 -0.744457653 01 000008
9 00009 -0.032423490 01 000009
10 00010 0.444927177 01 000010
11 00011 0.275987558 01 000011
12 00012 -0.849249211 01 000012
13 00013 -0.171425328 01 000013
14 00014 0.619332390 01 000014
etc.
Vielen Dank im Vorraus!