[R] standardising a data matrix

Tord Snall tord.snall at ebc.uu.se
Fri Mar 2 14:32:07 CET 2001


Dear Paulo and Martyn,
Thanks a lot for this help. As a beginner I really appreciate the help
available on this list. I searched for a suitable function in Venables &
Ripley but only in the first two chapters. Now I know I can read about this
kind of things in chapter 4.

yours,
Tord

 .At 15:19 2001-03-02 +0100, you wrote:
>On 02-Mar-01 Tord Snall wrote:
>> Dear all,
>> I would like to standardise my data. Here is an exemple for two columns:
>> 
>>> onorm<- read.table("onorm.txt", header=T)
>>> names(onorm)
>> [1] "on1" "on2" "on3" "on4" "on5"
>>> norm<- data.frame((onorm$on1-mean(onorm$on1))/stdev(onorm$on1),
>> (onorm$on2-mean(onorm$on2))/stdev(onorm$on2))
>> 
>> I would be happy however not having got to do this coulumnwise since I have
>> about 80 columns. Could someone please give a hint on how to do this for
>> the whole matrix. 
>
>Use sweep() 
>
>norm <- sweep(onorm, 2, apply(onorm, 2, mean), "-") # standardize mean to 0
>norm <- sweep(norm, 2, apply(norm, 2, sd), "/")   # standardize variance to 1
>
>> The names of the coulumns are on1, on2 etc. as above. I want the columns in
>> the new standardised dataset to have the names son1, son2 etc, i.e. adding
>> an s to all the original column names. How do I do that?
>
>names(norm) <- paste("s", names(norm), sep="")
>
>Martyn
>
>

-----------------------------------------------------------------------
Tord Snäll
Avd. f växtekologi, Evolutionsbiologiskt centrum, Uppsala universitet
Dept. of Plant Ecology, Evolutionary Biology Centre, Uppsala University
Villavägen 14			
SE-752 36 Uppsala, Sweden
Tel: 018-471 28 82 (int +46 18 471 28 82) (work)
Tel: 018-25 71 33 (int +46 18 25 71 33) (home)
Fax: 018-55 34 19 (int +46 18 55 34 19) (work)
E-mail: Tord.Snall at ebc.uu.se
http://www.vaxtbio.uu.se/resfold/tord_s.htm
------------------------------------------------------------------------

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list