2014-04-04 4 views
4

Я после некоторых code и я могу применить все, пока я не к команде:Что% *% означает в R

s1 %*% cc1$xcoef 

Эта линия не работает для меня, и я не могу найти документацию объясните, что это цель. Я получаю эту ошибку:

Error in s1 %*% cc1$xcoef : non-conformable arguments 

Что делает %*% делать и я могу использовать другую функцию?

Я использую R версии 3.0.3 (2014-03-06) "Теплый" Щенок

+3

Посмотрите на ['?"% *% "'] (Http://stat.ethz.ch/R-manual/R-patched/library/base/html/ma tmult.html), чтобы прочитать файл справки. –

+0

Спасибо, что я забыл цитаты при использовании? – kungphil

ответ

16

Используйте ?'%*%', чтобы получить документацию.

%*% - умножение матрицы. Для матричного умножения вам нужна матрица m x n с матрицей n x p.

+1

Ваш ответ научил меня, что я могу использовать кавычки после '?', Чтобы найти документацию по другим арифметическим операциям в R, например '?" %% ". – coip

4

умножения матриц, следующий пример:

> A <- matrix (c(1,3,4, 5,8,9, 1,3,3), 3,3) 
> A 
    [,1] [,2] [,3] 
[1,] 1 5 1 
[2,] 3 8 3 
[3,] 4 9 3 
> 
> B <- matrix (c(2,4,5, 8,9,2, 3,4,5), 3,3) 
> 
> B 
    [,1] [,2] [,3] 
[1,] 2 8 3 
[2,] 4 9 4 
[3,] 5 2 5 
> 
> 
> A %*% B 
    [,1] [,2] [,3] 
[1,] 27 55 28 
[2,] 53 102 56 
[3,] 59 119 63 

> B %*% A 
    [,1] [,2] [,3] 
[1,] 38 101 35 
[2,] 47 128 43 
[3,] 31 86 26 

Также смотрите:

http://en.wikipedia.org/wiki/Matrix_multiplication

Если это не следует размеру правила матрицы вы получите сообщение об ошибке:

> A <- matrix(c(1,2,3,4,5,6), 3,2) 
    > A 
    [,1] [,2] 
[1,] 1 4 
[2,] 2 5 
[3,] 3 6 

> B <- matrix (c(3,1,3,4,4,4,4,4,3), 3,3) 

> B 
     [,1] [,2] [,3] 
    [1,] 3 4 4 
    [2,] 1 4 4 
    [3,] 3 4 3 
    > A%*%B 
    Error in A %*% B : non-conformable arguments 
Смежные вопросы