[R] Multiplying each row of a big matrix with a vector
Attiglah, Mama
Mama_Attiglah at ssga.com
Wed Jan 30 12:47:24 CET 2008
I understood that you only need to multiply each row of Ret by the
vector Pos but it seems that you would like to sum the resulting vector
element in order to have a vector of length 500.
That is merely the matrix multiplication in R!!!
i.e. Ret %*% Pos.
Am I getting the question wrong?
Mama
-----
Mama Attiglah, PhD
Advanced Research Center
Quantitative Research Analyst
State Street Bank
+44(0)20 7698 6290 (Direct Line)
+44 (0)207 004 2968 (Direct Fax)
Please visit our Web site at
www.ssga.com
-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
On Behalf Of Attiglah, Mama
Sent: 30 January 2008 11:32
To: Megh Dal; r-help at stat.math.ethz.ch
Subject: Re: [R] Multiplying each row of a big matrix with a vector
Ret= matrix(sample( 1:1000, 500*9), nrow=500, ncol=9)
Pos= c( 2593419 ,2130220, 6198197, 1673888, 1980000 , 1784732 ,
2052120 ,-7490228 ,-5275000)
Solution = Ret * matrix( rep(Pos, 500), nrow=500, byrow=TRUE)
Use the element-wise multiplication rather than a matrix multiplication.
Hope this helps.
Mama
-----
Mama Attiglah, PhD
Advanced Research Center
Quantitative Research Analyst
State Street Bank
+44(0)20 7698 6290 (Direct Line)
+44 (0)207 004 2968 (Direct Fax)
Please visit our Web site at
www.ssga.com
-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
On Behalf Of Megh Dal
Sent: 30 January 2008 07:20
To: r-help at stat.math.ethz.ch
Subject: [R] Multiplying each row of a big matrix with a vector
I have a big matrix 'ret'. I want to multiply each row of it with a 2nd
vector 'pos', resulting result, I want to save in a vector named 'port'.
I wrote following code:
> pos
[1] 2593419 2130220 6198197 1673888 1980000 1784732 2052120
-7490228 -5275000
> dim(ret)
[1] 500 9
> fu # user defined function
function(x)
{
fu = x %*% t(pos)
}
port = apply(ret, 1, fu)
> dim(port)
[1] 81 500
My desire is to get port as a vector with length 500. However I am not
getting that?
Can anyone tell me how to correct that?
Regards,
---------------------------------
[[alternative HTML version deleted]]
______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list