Hi all, i purchased a copy of the book Morphometrics with R by Springer.
at the end of each chapter there are exercises to train what you just read and (hope) learned...

so i have this problem:

Define a hypothetical data frame containing five measurments normally distributed(size,head,pectoral,area,weight) for four individuals (named ind1, ind2, etc). ADD A COLUMN corresponding to the factor sex with individual 1 & 2 being Males and 3 & $ being Females.



HERE IS HOW I PROCEDED, getting 2 problems
1) what are those warning messages i got when i generate the m matrix (the italian text stand for "the numerical expression has 5 elements: just the first is used") 2) why when i use cbind to add the s factor wit M,M,F,F, (sexes) to the m matrix i get numerical values 1 & 2 instead of character values M & F?

------------------------------------------------------------------------------------------------------
procedure follows:

> a<- rnorm(5, 20, 7)
> a
[1] 27.32586 34.07330 21.11710 25.85710 22.68296
> a
[1] 27.32586 34.07330 21.11710 25.85710 22.68296
> b<- rnorm(5, 20, 7)
>
> d<- rnorm(5, 20, 7)
>
>
> e<- rnorm(5, 20, 7)

> m<-matrix(a:e, 4,5)
Warning messages:
1: In a:e :
 l'espressione numerica ha 5 elementi: solo il primo è utilizzato
2: In a:e :
 l'espressione numerica ha 5 elementi: solo il primo è utilizzato
3: In matrix(a:e, 4, 5) :
data length [3] is not a sub-multiple or multiple of the number of rows [4]
>
> m
        [,1]     [,2]     [,3]     [,4]     [,5]
[1,] 27.32586 28.32586 29.32586 27.32586 28.32586
[2,] 28.32586 29.32586 27.32586 28.32586 29.32586
[3,] 29.32586 27.32586 28.32586 29.32586 27.32586
[4,] 27.32586 28.32586 29.32586 27.32586 28.32586

> m<-as.data.frame(m)
> m
       V1       V2       V3       V4       V5
1 27.32586 28.32586 29.32586 27.32586 28.32586
2 28.32586 29.32586 27.32586 28.32586 29.32586
3 29.32586 27.32586 28.32586 29.32586 27.32586
4 27.32586 28.32586 29.32586 27.32586 28.32586
> mode(m)
[1] "list"
> colnames(m)<-c("size","head","pectoral","area","weight")
> mode(m)
[1] "list"
>
> m
     size     head pectoral     area   weight
1 27.32586 28.32586 29.32586 27.32586 28.32586
2 28.32586 29.32586 27.32586 28.32586 29.32586
3 29.32586 27.32586 28.32586 29.32586 27.32586
4 27.32586 28.32586 29.32586 27.32586 28.32586

>rownames(m)<-paste("ind", 1:4, sep="")
>
>
> m
        size     head pectoral     area   weight
ind1 27.32586 28.32586 29.32586 27.32586 28.32586
ind2 28.32586 29.32586 27.32586 28.32586 29.32586
ind3 29.32586 27.32586 28.32586 29.32586 27.32586
ind4 27.32586 28.32586 29.32586 27.32586 28.32586

> s<-factor(c("m","m","f","f"))
>
>
> s
[1] m m f f
Levels: f m
> cbind(m,s)
        size     head pectoral     area   weight s
ind1 27.32586 28.32586 29.32586 27.32586 28.32586 2
ind2 28.32586 29.32586 27.32586 28.32586 29.32586 2
ind3 29.32586 27.32586 28.32586 29.32586 27.32586 1
ind4 27.32586 28.32586 29.32586 27.32586 28.32586 1
>
------------------------------------------------------------------------------------------------------

Thanks in advance


Fabio Murtas
fabio.mur...@gmail.com

Nothing in biology make sense if not in Evolution light

______________________________________________
R-help@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.

Reply via email to