Ich glaub, ich steh ziemlich auf dem Schlauch
Das ist mein Ausschnitt.
Also ich möchte etwas n mal durchlaufen lassen, mache das über eine for-schleife.
Und am Ende soll er mir je den Wert ausgeben.
Ich bekomme tatsächlich auch meine n Werte.
Allerdings nur auf der Konsole nur zusammenfügen lassen sie sich nicht. Wenn ich es einzeln ansprech ist logischerweise nur der letzte Wert drin, da ja durch die schleife überschrieben wird.
Aber ich brauche jeden dieser Werte am besten als Liste oder array.
vielen lieben Dank
Code: Alles auswählen
# bivariate Verteilung mit N(0,1) und N(1,2) Randverteilungen und Clayton Copula
# Parameter Theta= 0.5, 0.8, 1, 5, 10
for (i in 1:10) {
# Copula mit Theta=0.5 generieren
cop0.5=archmCopula(family="clayton", dim=2, param=0.5) # 0.5
my.margins=c("norm", "norm")
my.param=list(list(mean=0, sd=1),list(mean=1, sd=sqrt(2)))
Bvd0.5=mvdc(copula=cop0.5, margins=my.margins, paramMargins=my.param)
Bvd0.5
# simuliere n ZVar
n=1000
Bvd0.5.sim=rMvdc(n,Bvd0.5)
# Anfangswerte festlegen
start.vals=c(0,1,1,sqrt(2),0.5)
#names(start.vals)=c("mu1", "sigma1", "mu2", "sigma2", "theta")
# MLE
# Copula optimieren/maximieren
mleBvdc.fit=fitMvdc(Bvd0.5.sim, Bvd0.5, start.vals)
mleBvdc.fit
# Ausgabe der geschätzten Variablen
MLEparam.dach=mleBvdc.fit@estimate
print(MLEparam.dach[5])
}
[1] 0.5711582
[1] 0.54405
[1] 0.6319878
[1] 0.509551
[1] 0.5511724
[1] 0.5002573
[1] 0.5181772
[1] 0.5090123
[1] 0.4927321
[1] 0.4801617