[R] How to get standard deviation of rows in a matrix

Duncan Murdoch murdoch at stats.uwo.ca
Wed Mar 9 21:46:13 CET 2005


On Wed, 9 Mar 2005 13:49:44 -0600, "Jagarlamudi, Choudary"
<choudary.jagar at swosu.edu> wrote :

>Hi all,
> 
>   I am trying to find sd of my rows in a matrix and i get column sd inspite of extracting rows.
>I tried to do the sqrt(var(x)) but that did'nt work as well,
> 
>Here is my data
> 
>genes
>15 24 63 40
>25 42 46 35
>23 53 37 45
>30 37 50 55
>40 51 30 48
> 
>x<-sd(genes[1:5,])

This doesn't extract the rows, it just returns the same matrix.  As
the man page for sd says, when applied to a matrix it calculates the
standard deviation of each column.

What you want to do is to use the apply function.  Rows are the first
dimension, so you would use

apply(genes, 1, sd)

Duncan Murdoch




More information about the R-help mailing list