ошибка при построении построенной линии нормального распределения в r - PullRequest
1 голос
/ 23 июня 2019

Я попытался построить подобранную линию нормального распределения, используя функцию lines () в R, но она выдает ошибку.Данные SP500, и я пытаюсь сравнить распределение журнала возврата SP500 с нормальным распределением с вычисленным средним и стандартным отклонением.

SP500_R = diff(log(SP500['2008/2009']))

# compare the log return with normal distribution using dnorm function
mu = mean(SP500_R, na.rm=T)
sigma = sd(SP500_R, na.rm=T)

hist(SP500_R, nclass = 20, probability = TRUE)
lines(SP500_R, dnorm(SP500_R, mean = mu, sd = sigma), col='red', lend = 2)

Я думал, что это была проблема NA в SP500_R, но она оказаласьчто это не проблема.Ошибка та же самая после удаления NA в SP500_R.После перезапуска R ошибка изменилась на вторую.

Я ожидал график с гистограммой и красной линией, но получил ошибку, подобную этой:

Error in plot.xy(xy.coords(x, y), type = type, ...) : 
  graphical parameter "lend" has the wrong length

Вторая ошибкапосле перезапуска R:

Error in get(".xts_chob", .plotxtsEnv) : object '.xts_chob' not found

1 Ответ

0 голосов
/ 23 июня 2019
library(xts)

set.seed(12345)
SP500 <- xts(x=rnorm(500, mean=50), order.by=Sys.Date()-(1:500)*30)
SP500 ['2008/2009']

SP500_R = diff(log(SP500['2008/2009']))

head(SP500_R)
#                     [,1]
# 2008-01-22            NA
# 2008-02-21  0.0107095178
# 2008-03-22 -0.0337194554
# 2008-04-21 -0.0007512932
# 2008-05-21  0.0729341823
# 2008-06-20 -0.0757315444


# compare the log return with normal distribution using dnorm function
mu = mean(SP500_R, na.rm=T)
sigma = sd(SP500_R, na.rm=T)

#Remove first row and plot the result
lx <- as.numeric(SP500_R[-1])
hist(lx, nclass = 20, probability = TRUE)
lines(density(lx), col="red", lend=2, lwd=2)

enter image description here

Использование функции dnorm () для отображения строки:

lx <- as.numeric(SP500_R[-1]) 
h<- hist(lx, nclass = 20, probability = TRUE) 
lines(sort(lx), dnorm(lx[order(lx)], mean = mu, sd = sigma), lend = 2, col='red', lwd=2) 

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...