Умножение матриц с циклом в R

У меня есть матрица "eps" с 2 строками и n столбцами. У меня также есть матрица B с 2 строками и 2 столбцами. Я хочу умножить инверсию B на каждый столбец «eps», чтобы получить n новых матриц размером 2x1. Затем я транспонирую эти n новых матриц для размерности 1x2 и заполняю их матрицей U, которая имеет 2 столбца и n строк.

Но мой код ниже неверен с сообщением «Ошибка: неожиданный символ в «для i»» от R. Не могли бы вы мне помочь? Большое спасибо!

for i in 1:nrow(U){U[i,] <- t(solve(B)%*%eps[,i])}

person cherrykate    schedule 10.05.2017    source источник


Ответы (1)


U <- t(solve(B, eps)) и готово!

По поводу ошибки: for (i in 1:nrow(U)) прочтите ?Control.

person Zheyuan Li    schedule 10.05.2017
comment
?for не существует, не так ли? - person Tonio Liebrand; 10.05.2017
comment
@李哲源ZheyuanLi: я думал, что уже сделал это и с твоим ответом :) - person cherrykate; 11.05.2017