Skip to content
Back to formatted view

Raw Message

Message-ID: <F7E6D18CC2877149AB5296CE54EA27660EE37695@WAXMXOLYMB011.WAX.wa.lcl>
Date: 2012-12-12T19:54:07Z
From: Nordlund, Dan (DSHS/RDA)
Subject: Matrix multiplication
In-Reply-To: <FB682146-F434-4CDB-BF3A-7F583CF70FFB@ifm.liu.se>

> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of annek
> Sent: Tuesday, December 11, 2012 11:19 PM
> To: r-help at r-project.org
> Subject: [R] Matrix multiplication
> 
> Hi,
> I have a transition matrix T for which I want to find the steady state
> matrix for. This could be approximated by taking T^n , for large n.
> 
> T= [ 0.8797   0.0382   0.0527   0.0008
>       0.0212    0.8002   0.0041   0.0143
>       0.0981    0.0273   0.8802   0.0527
>       0.0010    0.1343   0.0630   0.9322]
> 
> According to a text book I have T^200 should have reached the steady
> state L
> 
> L =[0.17458813   0.17458813   0.17458813   0.17458813
>       0.05731902   0.05731902   0.05731902   0.05731902
>       0.35028624   0.35028624   0.35028624   0.35028624
>       0.44160126   0.44160126   0.44160126   0.44160126]
> 
> I am addressing the problem using a for loop doing matrix
> multiplication (guess there might be better ways, please suggest) and


Suggest you look at the %^% operator from the expm package for raising a matrix to a power.

library(expm)
T %^% 200


Hope this is helpful,

Dan 

Daniel J. Nordlund
Washington State Department of Social and Health Services
Planning, Performance, and Accountability
Research and Data Analysis Division
Olympia, WA 98504-5204