Я решаю простую задачу оптимизации.Набор данных имеет 26 столбцов и более 3000 строк.Исходный код выглядит как
Means <- colMeans(Returns)
Sigma <- cov(Returns)
invSigma1 <- solve(Sigma)
И все работает отлично, но затем я хочу сделать то же самое для более короткого периода (только 261 строки), и функция решения пишет следующую ошибку:
solve(Sigma)
Error in solve.default(Sigma) :
Lapack routine dgesv: system is exactly singular
Это странно, потому что, когда я делаю то же самое с некоторыми случайными числами:
Returns<-matrix(runif(6786,-1,1), nrow=261)
Means <- colMeans(Returns)
Sigma <- cov(Returns)
invSigma <- solve(Sigma)
, ошибка вообще не возникает.Может ли кто-нибудь объяснить мне, где может быть проблема и как ее решить.Большое спасибо, Алекс