Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Hi, Do you have a software program for plug and ply to measure phylogenetic signal in a phylogenetic tree? I have a very high signal in an extinct species that is represented in a morphology matrix but not in the molecular sequence matrix, yet it appears to have the highest phylogenetic signal from only half the data the other species do in a phylogram of the evolution of darters. Thanks. Bob r...@bumail.bradley.edu ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
is that you can keep your shape variables on individuals as well. Then you can analyze within-species variation as well as between. This is important if you hope to make the connection between quantitative genetics and macroevolution in your data (see Klingenberg 1996), or if you want to increase the power of your comparative study by including within-group variation. If you only have species-mean values, you can still take the log-ratios on species means. In terms of relating your methods to a model of size evolution, the geometric method of size correction gives you a model with a null expectation. If you have isometric increase in size, then you expect to see all dimensions to increase equally. Maybe this is a null model that you don't really expect to see in your data, but at least it is a model-based starting point which you can compare to. An allometric relationship is anything else -- for example if some dimensions increase faster. You can characterize the different ways that evolution is occurring and this can be interesting. This was written up in some papers in the late 90's by Flury and Phillips and Arnold (heirarchical and analysis of G and P variance-cov matrices) . See this paper for a starting point. Phillips, P.C. and S.J. Arnold. 1999. Hierarchical comparison of genetic variance-covariance matrices. I. Using the Flury hierarchy. Evolution 53:1506-1515. The regression approach is just a statistical model -- rather difficult to ever make the connection to a mechanistic or functional model. Sometimes people worry that it is illegal to work with ratios. The statistical properties of ratios (or log-ratios) is also a topic that is very well explored. The simple answer is that you can just check and confirm that your ratios are behaving well (i.e., not extremely skewed), and all is fine. This is a long answer to Alberto's questions -- either way can be justified, the choice of methods depends on what you hope to accomplish and how you will interpret the results. Personally, I would do the analysis of log(Y/X), rather than log Y ~ log X, if I were interested in the evolution of shape (e.g., how relative limb length) evolves across species. Marguerite On Mar 23, 2011, at 7:01 AM, tgarl...@ucr.edu wrote: Hi Alberto, OK, I think the bigger and more general issue is how to correct for correlations with body size. this is an issue in many circumstances, both biologically and statistically, aside from any questions about how best to test for or quantify phylogenetic signal. I think that if you get it right from the biological/statistical perspective then you will also have the answer regarding what to do for phylogenetic signal. When you compute a ratio (divide by a measure of body size) in hopes of removing the effects of body size you are implicitly assuming that the trait varies directly with the measure of body size. For example, computing tail length/body length for snakes might be a good way to remove the effects of body size if snakes of all sizes, on average, have tails of the same relative length. However, many traits do not vary directly with any measure of body size. For example, resting metabolic rate generally does not vary directly with body mass. Rather, it scales on body mass (log-log plot) with a slope of about 0.6-0.8. Hence, if you compute the ratio metabolic rate/body mass it will show a negative relation with body mass, and so you have not removed the correlation with body mass. In such a case, it is generally better to do the log-log regression and compute residuals. Or, you can do what I described previously (see Blomberg et al., 2003, pages 720-721). In some cases, you might have strong a priori knowledge or particular biological needs that would lead you to trust computing a ratio for your particular purposes. For example, one might compute the ratio of forelimb length divided by hindlimb length of lizards for some purposes. In general, however, the regression approach is probably safest if you want to then analyze a trait that is no longer correlated with body size. Cheers, Ted Original message Date: Wed, 23 Mar 2011 02:13:36 +0200 From: Alberto Gallano alberto@gmail.com Subject: Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait? To: Alejandro Gonzalez alejandro.gonza...@ebd.csic.es Cc: R-phylo Mailing-list r-sig-phylo@r-project.org Thanks Alejandro, yes, I see this difference. I think my question is: if the goal is to assess phylogenetic signal in a trait, after accounting for interspecific differences in body size, which of these two alternatives is preferable? They both seem to calculate lambda after correcting for body size. Is one way more correct, given the above stated goal? regards, Alberto On Wed, Mar 23, 2011 at 1:53 AM, Alejandro Gonzalez
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Hi Alberto, OK, I think the bigger and more general issue is how to correct for correlations with body size. this is an issue in many circumstances, both biologically and statistically, aside from any questions about how best to test for or quantify phylogenetic signal. I think that if you get it right from the biological/statistical perspective then you will also have the answer regarding what to do for phylogenetic signal. When you compute a ratio (divide by a measure of body size) in hopes of removing the effects of body size you are implicitly assuming that the trait varies directly with the measure of body size. For example, computing tail length/body length for snakes might be a good way to remove the effects of body size if snakes of all sizes, on average, have tails of the same relative length. However, many traits do not vary directly with any measure of body size. For example, resting metabolic rate generally does not vary directly with body mass. Rather, it scales on body mass (log-log plot) with a slope of about 0.6-0.8. Hence, if you compute the ratio metabolic rate/body mass it will show a negative relation with body mass, and so you have not removed the correlation with body mass. In such a case, it is generally better to do the log-log regression and compute residuals. Or, you can do what I described previously (see Blomberg et al., 2003, pages 720-721). In some cases, you might have strong a priori knowledge or particular biological needs that would lead you to trust computing a ratio for your particular purposes. For example, one might compute the ratio of forelimb length divided by hindlimb length of lizards for some purposes. In general, however, the regression approach is probably safest if you want to then analyze a trait that is no longer correlated with body size. Cheers, Ted Original message Date: Wed, 23 Mar 2011 02:13:36 +0200 From: Alberto Gallano alberto@gmail.com Subject: Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait? To: Alejandro Gonzalez alejandro.gonza...@ebd.csic.es Cc: R-phylo Mailing-list r-sig-phylo@r-project.org Thanks Alejandro, yes, I see this difference. I think my question is: if the goal is to assess phylogenetic signal in a trait, after accounting for interspecific differences in body size, which of these two alternatives is preferable? They both seem to calculate lambda after correcting for body size. Is one way more correct, given the above stated goal? regards, Alberto On Wed, Mar 23, 2011 at 1:53 AM, Alejandro Gonzalez alejandro.gonza...@ebd.csic.es wrote: Hi Alberto, The results differ between the two approaches because you're actually estimating two different things. gls(logY ~ logX, correlation=corPagel(1, tree), method=ML) Will give you the estimate of lambda for the residuals of the fitted model. while: fitContinuous(tree, log(Y/X), model=lambda) will give you the lambda value of the ratio of the two traits. Cheers, Alejandro On 23, Mar 2011, at 12:47 AM, Alberto Gallano wrote: Thanks Ted and Joe, that helps a lot with my understanding. Given then that the variables should be on a log scale, as you suggest, is there any reason to chose a regression model estimate of lambda: gls(logY ~ logX, correlation=corPagel(1, tree), method=ML) where X is a body size proxy (i.e., scaling is done in the model), over a ratio approach?: fitContinuous(tree, log(Y/X), model=lambda) These seem to produce different results. Is there a preference for one other the other in a comparative methods context? Or is this just a question of whether one prefers to size 'correct' using ratios vs residuals? kind regards, Alberto On Wed, Mar 23, 2011 at 1:30 AM, Joe Felsenstein j...@gs.washington.edu wrote: Ted wrote: Following on that, various papers (I can't remember the references) have argued that imagining Brownian-like evolution of body size on a log scale seems reasonable. That is, it should be equally easy for an elephant's body size to evolve 10% as for a mouse's body size to evolve 10%, and to analyze that you want everybody on a log scale. Extending this, you would want to use log(Y/X) or log(Y/[X raised to some allometric slope]). It's just easier to put all variables onto their log scales, so you have log(X), log(Y), log(Z) and then the allometric stuff just corresponds to linear combinations there, which you already have machinery to do. The recommendation to use log scales is a very old one: I talk about it in my Theoretical Evolutionary Genetics free e-text. But is older than that. Falconer has a whole chapter on Scale in his 1960 Introduction
[R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
This is a repost of an earlier question, after my colleague helped me with my English: To calculate signal in PGLS multiple regression (with say two independent variables) I can use the following model: lambdaModel - gls(Y ~ X + bodymass, correlation=corPagel(1, tree), method=ML) This will take account of body mass when assessing the strength of relationship between Y and X. This calculates lambda for the residuals and is better than calculating lambda for each trait (according to Revell, 2010). My question is, If I only want to find phylogenetic signal in one (unscaled) variable, should I use the model: lambdaModel - gls(Y ~ bodymass, correlation=corPagel(1, tree), method=ML) Will this give the lambda value for Y after controlling for body mass? Or, would it be better to 'correct' for body mass first, using a ratio (Y / body mass), and then calculate lambda for this scaled trait, using for example: lambdaModel - fitContinuous(tree, scaled_Y, model=lambda) kind regards, Alberto [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Hi Alberto, I'll jump in here. Aside from anything you would do with Pagel's lambda, Grafen's rho, or an OU or ACDC transform, it is useful to have a value for the K statistic, as presented here: Blomberg, S. P., T. Garland, Jr., and A. R. Ives. 2003. Testing for phylogenetic signal in comparative data: behavioral traits are more labile. Evolution 57:717-745. In that paper (see pages 720-721), we surveyed a lot of traits on a lot of trees, and so you can compare your K values with what we show. For the traits that were obviously correlated with body mass (e.g., leg length, brain mass, metabolic rate), we first computed size-corrected values in the following way. 1. log-transform the trait and body mass. 2. Use a phylogenetic regression method (e.g. independent contrasts, PGLS, maybe a regression with a transform) to obtain the allometric equation. 3. Divide the trait by body mass raised to the allometric scaling exponent (i.e., the slope from #2), then take the log of that quantity. 4. Compute the K statistic. Cheers, Ted Original message Date: Tue, 22 Mar 2011 20:37:58 +0200 From: Alberto Gallano alberto@gmail.com Subject: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait? To: r-sig-phylo@r-project.org This is a repost of an earlier question, after my colleague helped me with my English: To calculate signal in PGLS multiple regression (with say two independent variables) I can use the following model: lambdaModel - gls(Y ~ X + bodymass, correlation=corPagel(1, tree), method=ML) This will take account of body mass when assessing the strength of relationship between Y and X. This calculates lambda for the residuals and is better than calculating lambda for each trait (according to Revell, 2010). My question is, If I only want to find phylogenetic signal in one (unscaled) variable, should I use the model: lambdaModel - gls(Y ~ bodymass, correlation=corPagel(1, tree), method=ML) Will this give the lambda value for Y after controlling for body mass? Or, would it be better to 'correct' for body mass first, using a ratio (Y / body mass), and then calculate lambda for this scaled trait, using for example: lambdaModel - fitContinuous(tree, scaled_Y, model=lambda) kind regards, Alberto [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Thanks Ted, Do I understand correctly then that the K statistic cannot be calculated in a regression model? In other words, the trait needs to be scaled first and then to proceed as you outlined? Also, I am confused by the logarithmic transformation of traits in PGLS and when calculating K. This transformation reduces the distance between means along the right hand tail of a sample (thus helping achieve normality), but this turns ratio scale data into ordinal data - since relative distances between means are not preserved. Is log transformation therefore a bad idea prior to doing PGLS or calculating K? It seems it would affect signal values greatly. kind regards, Alberto On Tue, Mar 22, 2011 at 9:36 PM, tgarl...@ucr.edu wrote: Hi Alberto, I'll jump in here. Aside from anything you would do with Pagel's lambda, Grafen's rho, or an OU or ACDC transform, it is useful to have a value for the K statistic, as presented here: Blomberg, S. P., T. Garland, Jr., and A. R. Ives. 2003. Testing for phylogenetic signal in comparative data: behavioral traits are more labile. Evolution 57:717-745. In that paper (see pages 720-721), we surveyed a lot of traits on a lot of trees, and so you can compare your K values with what we show. For the traits that were obviously correlated with body mass (e.g., leg length, brain mass, metabolic rate), we first computed size-corrected values in the following way. 1. log-transform the trait and body mass. 2. Use a phylogenetic regression method (e.g. independent contrasts, PGLS, maybe a regression with a transform) to obtain the allometric equation. 3. Divide the trait by body mass raised to the allometric scaling exponent (i.e., the slope from #2), then take the log of that quantity. 4. Compute the K statistic. Cheers, Ted Original message Date: Tue, 22 Mar 2011 20:37:58 +0200 From: Alberto Gallano alberto@gmail.com Subject: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait? To: r-sig-phylo@r-project.org This is a repost of an earlier question, after my colleague helped me with my English: To calculate signal in PGLS multiple regression (with say two independent variables) I can use the following model: lambdaModel - gls(Y ~ X + bodymass, correlation=corPagel(1, tree), method=ML) This will take account of body mass when assessing the strength of relationship between Y and X. This calculates lambda for the residuals and is better than calculating lambda for each trait (according to Revell, 2010). My question is, If I only want to find phylogenetic signal in one (unscaled) variable, should I use the model: lambdaModel - gls(Y ~ bodymass, correlation=corPagel(1, tree), method=ML) Will this give the lambda value for Y after controlling for body mass? Or, would it be better to 'correct' for body mass first, using a ratio (Y / body mass), and then calculate lambda for this scaled trait, using for example: lambdaModel - fitContinuous(tree, scaled_Y, model=lambda) kind regards, Alberto [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Thanks again Ted, I think I was not clear with what I said about the log transformation, and I see now what you mean about using log-log when using regression. Though It does seem to me that logging two variables in a ratio context: log(Y) / log(X) or log(Y / X) would influence phylogenetic signal levels greatly, since, while the order of trait means is maintained, the magnitude of differences between trait means is altered (means with higher values are dragged toward the centre of the distribution). I assume, then, that this is nothing to worry about. Do you (or anyone else) have any thoughts on my original question - about whether calculating lambda in a single unscaled trait should be done using a regression approach: gls(Y ~ bodysize, correlation=corPagel(1, tree), method=ML) or by first scaling the trait and then calculating lambda?: fitContinuous(tree, scaled_Y, model=lambda) Does it make any difference, or is this just part of the broader question of whether one wishes to correct for body size by using residuals or ratios? kind regards, Alberto On Tue, Mar 22, 2011 at 9:56 PM, tgarl...@ucr.edu wrote: Hi Alberto, Do I understand correctly then that the K statistic cannot be calculated in a regression model? It might be possible to get the K directly from a regression model, rather than doing the scaling first, but I have not seen a formula for that nor code in R, Matlab, etc. In any case, you would want to check to make sure the numbers came out the same. In other words, the trait needs to be scaled first and then to proceed as you outlined? Correct. Also, I am confused by the logarithmic transformation of traits in PGLS and when calculating K. This transformation reduces the distance between means along the right hand tail of a sample (thus helping achieve normality), but this turns ratio scale data into ordinal data - since relative distances between means are not preserved. Is log transformation therefore a bad idea prior to doing PGLS or calculating K? It seems it would affect signal values greatly. I am not sure I am following all of your points. In general, for traits that scale allometrically (at least across a substantial range in body size), the double-log transform is done in order to linearize the relation (and hence allow fitting of linear regressions, whether OLS, PGLS, etc.) and homogenize variances about the line (achieve homoscedasticity). Usually, inspection of the log-log plots indicates this works, although it's obviously good to check for any particular trait and set of species. Anyway, we used log-log analyses to get our slopes, then proceeded as indicated. I would do the same to make things comparable, but also feel free to do other things as may seem warranted. Cheers, Ted Theodore Garland, Jr. Professor Department of Biology University of California, Riverside Riverside, CA 92521 Office Phone: (951) 827-3524 Wet Lab Phone: (951) 827-5724 Dry Lab Phone: (951) 827-4026 Home Phone: (951) 328-0820 Facsimile: (951) 827-4286 = Dept. office (not confidential) Email: tgarl...@ucr.edu Main Departmental page: http://www.biology.ucr.edu/people/faculty/Garland.html List of all Publications: http://www.biology.ucr.edu/people/faculty/Garland/GarlandPublications.html Garland and Rose, 2009 http://www.ucpress.edu/books/pages/10604.php Original message Date: Tue, 22 Mar 2011 21:45:43 +0200 From: Alberto Gallano alberto@gmail.com Subject: Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait? To: tgarl...@ucr.edu Cc: r-sig-phylo@r-project.org Thanks Ted, Do I understand correctly then that the K statistic cannot be calculated in a regression model? In other words, the trait needs to be scaled first and then to proceed as you outlined? Also, I am confused by the logarithmic transformation of traits in PGLS and when calculating K. This transformation reduces the distance between means along the right hand tail of a sample (thus helping achieve normality), but this turns ratio scale data into ordinal data - since relative distances between means are not preserved. Is log transformation therefore a bad idea prior to doing PGLS or calculating K? It seems it would affect signal values greatly. kind regards, Alberto On Tue, Mar 22, 2011 at 9:36 PM, tgarl...@ucr.edu wrote: Hi Alberto, I'll jump in here. Aside from anything you would do with Pagel's lambda, Grafen's rho, or an OU or ACDC transform, it is useful to have a value for the K statistic, as presented here: Blomberg, S. P., T. Garland, Jr., and A. R. Ives. 2003. Testing for phylogenetic signal in comparative data: behavioral traits are more labile. Evolution 57:717-745. In that paper
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Ted wrote: Following on that, various papers (I can't remember the references) have argued that imagining Brownian-like evolution of body size on a log scale seems reasonable. That is, it should be equally easy for an elephant's body size to evolve 10% as for a mouse's body size to evolve 10%, and to analyze that you want everybody on a log scale. Extending this, you would want to use log(Y/X) or log(Y/[X raised to some allometric slope]). It's just easier to put all variables onto their log scales, so you have log(X), log(Y), log(Z) and then the allometric stuff just corresponds to linear combinations there, which you already have machinery to do. The recommendation to use log scales is a very old one: I talk about it in my Theoretical Evolutionary Genetics free e-text. But is older than that. Falconer has a whole chapter on Scale in his 1960 Introduction of Quantitative Genetics. Sewall Wright has a discussion of it in Chapter 10 of his 1968 first volume of Evolution and the Genetics of Populations (see pages 227ff.). But it is older than those -- for Wright also says (p. 228): Galton, as long ago as 1879, noted that the logarithms of measurements of organisms may be more appropriate than the measurements themselves on the hypothesis that growth factors tend to contribute constant percentage increments rather than constant absolute ones. The old biometrical types of the 1930s and 1940s knew all about this (though taking logarithms was tedious). It is only the more recent researchers who don't know it. Joe Joe Felsenstein j...@gs.washington.edu Department of Genome Sciences and Department of Biology, University of Washington, Box 355065, Seattle, WA 98195-5065 USA ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Hi Alberto, The results differ between the two approaches because you're actually estimating two different things. gls(logY ~ logX, correlation=corPagel(1, tree), method=ML) Will give you the estimate of lambda for the residuals of the fitted model. while: fitContinuous(tree, log(Y/X), model=lambda) will give you the lambda value of the ratio of the two traits. Cheers, Alejandro On 23, Mar 2011, at 12:47 AM, Alberto Gallano wrote: Thanks Ted and Joe, that helps a lot with my understanding. Given then that the variables should be on a log scale, as you suggest, is there any reason to chose a regression model estimate of lambda: gls(logY ~ logX, correlation=corPagel(1, tree), method=ML) where X is a body size proxy (i.e., scaling is done in the model), over a ratio approach?: fitContinuous(tree, log(Y/X), model=lambda) These seem to produce different results. Is there a preference for one other the other in a comparative methods context? Or is this just a question of whether one prefers to size 'correct' using ratios vs residuals? kind regards, Alberto On Wed, Mar 23, 2011 at 1:30 AM, Joe Felsenstein j...@gs.washington.eduwrote: Ted wrote: Following on that, various papers (I can't remember the references) have argued that imagining Brownian-like evolution of body size on a log scale seems reasonable. That is, it should be equally easy for an elephant's body size to evolve 10% as for a mouse's body size to evolve 10%, and to analyze that you want everybody on a log scale. Extending this, you would want to use log(Y/X) or log(Y/[X raised to some allometric slope]). It's just easier to put all variables onto their log scales, so you have log(X), log(Y), log(Z) and then the allometric stuff just corresponds to linear combinations there, which you already have machinery to do. The recommendation to use log scales is a very old one: I talk about it in my Theoretical Evolutionary Genetics free e-text. But is older than that. Falconer has a whole chapter on Scale in his 1960 Introduction of Quantitative Genetics. Sewall Wright has a discussion of it in Chapter 10 of his 1968 first volume of Evolution and the Genetics of Populations (see pages 227ff.). But it is older than those -- for Wright also says (p. 228): Galton, as long ago as 1879, noted that the logarithms of measurements of organisms may be more appropriate than the measurements themselves on the hypothesis that growth factors tend to contribute constant percentage increments rather than constant absolute ones. The old biometrical types of the 1930s and 1940s knew all about this (though taking logarithms was tedious). It is only the more recent researchers who don't know it. Joe Joe Felsenstein j...@gs.washington.edu Department of Genome Sciences and Department of Biology, University of Washington, Box 355065, Seattle, WA 98195-5065 USA [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo __ Alejandro Gonzalez Voyer Post-doc NEW ADDRESS Estación Biológica de Doñana Consejo Superior de Investigaciones Científicas (CSIC) Av Américo Vespucio s/n 41092 Sevilla Spain Tel: + 34 - 954 466700, ext 1749 E-mail: alejandro.gonza...@ebd.csic.es Web page: https://docs.google.com/View?id=dfs328dh_14gwwqsxcg [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Re: [R-sig-phylo] How to detect phylogenetic signal (lambda) in one unscaled trait?
Thanks Alejandro, yes, I see this difference. I think my question is: if the goal is to assess phylogenetic signal in a trait, after accounting for interspecific differences in body size, which of these two alternatives is preferable? They both seem to calculate lambda after correcting for body size. Is one way more correct, given the above stated goal? regards, Alberto On Wed, Mar 23, 2011 at 1:53 AM, Alejandro Gonzalez alejandro.gonza...@ebd.csic.es wrote: Hi Alberto, The results differ between the two approaches because you're actually estimating two different things. gls(logY ~ logX, correlation=corPagel(1, tree), method=ML) Will give you the estimate of lambda for the residuals of the fitted model. while: fitContinuous(tree, log(Y/X), model=lambda) will give you the lambda value of the ratio of the two traits. Cheers, Alejandro On 23, Mar 2011, at 12:47 AM, Alberto Gallano wrote: Thanks Ted and Joe, that helps a lot with my understanding. Given then that the variables should be on a log scale, as you suggest, is there any reason to chose a regression model estimate of lambda: gls(logY ~ logX, correlation=corPagel(1, tree), method=ML) where X is a body size proxy (i.e., scaling is done in the model), over a ratio approach?: fitContinuous(tree, log(Y/X), model=lambda) These seem to produce different results. Is there a preference for one other the other in a comparative methods context? Or is this just a question of whether one prefers to size 'correct' using ratios vs residuals? kind regards, Alberto On Wed, Mar 23, 2011 at 1:30 AM, Joe Felsenstein j...@gs.washington.edu wrote: Ted wrote: Following on that, various papers (I can't remember the references) have argued that imagining Brownian-like evolution of body size on a log scale seems reasonable. That is, it should be equally easy for an elephant's body size to evolve 10% as for a mouse's body size to evolve 10%, and to analyze that you want everybody on a log scale. Extending this, you would want to use log(Y/X) or log(Y/[X raised to some allometric slope]). It's just easier to put all variables onto their log scales, so you have log(X), log(Y), log(Z) and then the allometric stuff just corresponds to linear combinations there, which you already have machinery to do. The recommendation to use log scales is a very old one: I talk about it in my Theoretical Evolutionary Genetics free e-text. But is older than that. Falconer has a whole chapter on Scale in his 1960 Introduction of Quantitative Genetics. Sewall Wright has a discussion of it in Chapter 10 of his 1968 first volume of Evolution and the Genetics of Populations (see pages 227ff.). But it is older than those -- for Wright also says (p. 228): Galton, as long ago as 1879, noted that the logarithms of measurements of organisms may be more appropriate than the measurements themselves on the hypothesis that growth factors tend to contribute constant percentage increments rather than constant absolute ones. The old biometrical types of the 1930s and 1940s knew all about this (though taking logarithms was tedious). It is only the more recent researchers who don't know it. Joe Joe Felsenstein j...@gs.washington.edu Department of Genome Sciences and Department of Biology, University of Washington, Box 355065, Seattle, WA 98195-5065 USA [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo __ Alejandro Gonzalez Voyer Post-doc NEW ADDRESS Estación Biológica de Doñana Consejo Superior de Investigaciones Científicas (CSIC) Av Américo Vespucio s/n 41092 Sevilla Spain Tel: + 34 - 954 466700, ext 1749 E-mail: alejandro.gonza...@ebd.csic.es *Web page*: https://docs.google.com/View?id=dfs328dh_14gwwqsxcg [[alternative HTML version deleted]] ___ R-sig-phylo mailing list R-sig-phylo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-phylo