Ява - Матрица единственного числа

У меня есть этот код:

OLSMultipleLinearRegression regression = new OLSMultipleLinearRegression();
double[] consumptions = new double[vec.size()];  
double[][] x = new double[(int) (trainPart * vec.size())][3];

 while (it_vec.hasNext() ) {
   Vector<Double> tmp = new Vector<Double>();
   tmp = it_vec.next();

   if (count < trainPart * (vec.size())) {
     consumptions[count] = tmp.get(0);
     x[count] = new double []{tmp.get(1), tmp.get(4), season(tmp.get(5))};
    } else {
       //do something else  
       }        
    count++;
 }

regression.newSampleData(consumptions, x);
double[] coeff = regression.estimateRegressionParameters(); 

Я экономлю потребление электроэнергии (двойной) в массив consumptions в while цикл. массив xдержит три двойника, это: x[count] = new double []{tmp.get(1), tmp.get(4), season(tmp.get(5))};, tmp.get(1) это час дня, tmp.get(4) 1,0 или 0,0 (1,0, если выходные дни), season(tmp.get(5)) верните 1,0 или 0,0 (1,0, если есть зимние месяцы). Ошибка, которую я получаю в последней строке: matrix is singular,

Я знаю, что матрица единственная, если определитель равен нулю, но у меня много наблюдений. Кто-нибудь знает, где может быть проблема? Спасибо Дэниел

0 ответов

Другие вопросы по тегам