allometry-free modularity tests -- logic & method?

119 views
Skip to first unread message

Christy Hipsley

unread,
Aug 2, 2019, 11:42:00 AM8/2/19
to geomorph R package

Dear all,


I have a question on using allometry “free” shapes to estimate modularity at different developmental stages - how it should be done or if it even makes sense. 


I’m focusing on 2 species for which I’ve already shown ontogenetic allometries differ. I am curious if different regions of the skull show different patterns of modularity between species and stages, e.g. neonate, juvenile, adult. 


Using the covariance ratio (CR) I see that the strength of modularity changes markedly between the juvenile and adult stages, and I am now wondering if it makes sense to also test this using regression residuals, because 1) I’m specifically interested in how ontogeny (i.e., size) affects trait correlations within the skull given developmental benchmarks like suckling and weaning, and 2) because the species have significantly different allometric slopes. 


Mike has previously written here that “you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”. I considered using the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species, data = gdf, print.progress = FALSE) to estimate size-free shapes for use with modularity.test, which I can do but I’m not sure the results would be correct or even meaningful. I’m also asking because I have seen it done in other papers and am unclear of the logic or interpretation. The only reason I can think of is to compare with the “full” shape modularity results to show that size/ontogeny is a driving factor, although with an ontogenetic data set where I already know size is significant, I don’t see why this would be important.


Thanks for any advice on how or if I should move forward with this approach.

Christy

Ian Dworkin

unread,
Aug 2, 2019, 12:02:12 PM8/2/19
to geomorph R package
Hi Christy


In general, in terms of dealing with a situation like what Mike wrote (“you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”), I would not simply use evidence of significance of the interaction between species:size (or ontogeny). One thing I often have found is that even when such an interaction term shows statistically significant differences, the angle (or correlation) between vectors (i.e. the allometry vectors for each species) suggest they are very similar. i.e. the angle is near zero (correlation near 1).  This is often observed for us with static allometry vectors in Drosophila (where we have relatively large sample sizes in our experiments). So you may wish to do some additional evaluation (including the vector correlations, R^2 etc) and visual checks (maybe with some predicted values at extreme values) to determine whether the differences are likely to be meaningful (given your understanding of the biology of these organisms etc). Also, this depends on your sample sizes. If you have relatively modest sample sizes, and evidence for a species:size effect, that starts to suggest (but still check) that the allometric vectors may be different enough to warrant some concern.  Often in such cases I test whether the assumption of common allometry makes a real difference or not and report BOTH (never do both analyses and only report one).  Chris Klingenberg talks a little bit about this issue in his allometry opus from a couple of years ago in Development, Genes and Evolution.

Since you are doing ontogenic allometry the effects are likely pretty big (as compared to static allometry within species). 

Hope this helps a bit in thinking about the problem.

Ian


--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/geomorph-r-package/14a63526-2bb6-4615-a6f3-d9ce16dbf797%40googlegroups.com.


--
Ian Dworkin
Department of Biology
McMaster University

Miriam Zelditch

unread,
Aug 2, 2019, 12:16:57 PM8/2/19
to geomorph R package
One of the main reasons for removing the effects of allometry in studies comparing integration/modularity across ontogeny is that age-classes are often heterogeneous in age; the mean shape changes over the span of the age-class so you risk confounding that change in the mean with the variation around the mean. Even if your age-classes are not that heterogenous, you might still risk confounding ontogenetic change with variation if individuals differ in rates of growth and/or development, variation that is transient although perhaps interesting. The other main reason, which is not specific to ontogenetic studies, is that size is a "global" factor, and the integration due to that might obscure more local (modular) processes. Even if you don't get statistically significant differences, erring on the side of caution in these studies would motivate using species (and perhaps also stage-specific) allometries if the ontogenetic trajectories curve.  You might lack the power to determine that the difference is significant, but you don't want to risk incorporating the deviations from common-slope model into the analysis of modularity



--
Miriam Zelditch
Associate Research Scientist
Museum of Paleontology
University of Michigan
Ann Arbor, MI  48109-1079

Christy Hipsley

unread,
Aug 2, 2019, 12:31:11 PM8/2/19
to geomorph R package
Thanks Miriam and Ian for your responses.

In my case the 2 species in question are statistically different in ontogenetic allometries, yet still very similar in slope vector length (d=0.026, p=0.003) and slope vector angle (correlation [r] =0.911, angle=24.402 degrees, p=0.001). Even so, if I were to adjust for size to run modularity tests, can I use the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species)), or I remove size for the common allometry using procD.lm(Pcoords ~ logsize) given how similar they actually are? Doing either of these gives very different results, at least looking at their PCAs.

Thanks again for your feedback. It's helpful to think of these questions in terms of real biology, as you both suggested.


On Saturday, August 3, 2019 at 2:16:57 AM UTC+10, Miriam Zelditch wrote:
One of the main reasons for removing the effects of allometry in studies comparing integration/modularity across ontogeny is that age-classes are often heterogeneous in age; the mean shape changes over the span of the age-class so you risk confounding that change in the mean with the variation around the mean. Even if your age-classes are not that heterogenous, you might still risk confounding ontogenetic change with variation if individuals differ in rates of growth and/or development, variation that is transient although perhaps interesting. The other main reason, which is not specific to ontogenetic studies, is that size is a "global" factor, and the integration due to that might obscure more local (modular) processes. Even if you don't get statistically significant differences, erring on the side of caution in these studies would motivate using species (and perhaps also stage-specific) allometries if the ontogenetic trajectories curve.  You might lack the power to determine that the difference is significant, but you don't want to risk incorporating the deviations from common-slope model into the analysis of modularity

On Fri, Aug 2, 2019 at 12:02 PM Ian Dworkin <ian.d...@gmail.com> wrote:
Hi Christy


In general, in terms of dealing with a situation like what Mike wrote (“you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”), I would not simply use evidence of significance of the interaction between species:size (or ontogeny). One thing I often have found is that even when such an interaction term shows statistically significant differences, the angle (or correlation) between vectors (i.e. the allometry vectors for each species) suggest they are very similar. i.e. the angle is near zero (correlation near 1).  This is often observed for us with static allometry vectors in Drosophila (where we have relatively large sample sizes in our experiments). So you may wish to do some additional evaluation (including the vector correlations, R^2 etc) and visual checks (maybe with some predicted values at extreme values) to determine whether the differences are likely to be meaningful (given your understanding of the biology of these organisms etc). Also, this depends on your sample sizes. If you have relatively modest sample sizes, and evidence for a species:size effect, that starts to suggest (but still check) that the allometric vectors may be different enough to warrant some concern.  Often in such cases I test whether the assumption of common allometry makes a real difference or not and report BOTH (never do both analyses and only report one).  Chris Klingenberg talks a little bit about this issue in his allometry opus from a couple of years ago in Development, Genes and Evolution.

Since you are doing ontogenic allometry the effects are likely pretty big (as compared to static allometry within species). 

Hope this helps a bit in thinking about the problem.

Ian


On Fri, 2 Aug 2019 at 11:42, Christy Hipsley <christy...@unimelb.edu.au> wrote:

Dear all,


I have a question on using allometry “free” shapes to estimate modularity at different developmental stages - how it should be done or if it even makes sense. 


I’m focusing on 2 species for which I’ve already shown ontogenetic allometries differ. I am curious if different regions of the skull show different patterns of modularity between species and stages, e.g. neonate, juvenile, adult. 


Using the covariance ratio (CR) I see that the strength of modularity changes markedly between the juvenile and adult stages, and I am now wondering if it makes sense to also test this using regression residuals, because 1) I’m specifically interested in how ontogeny (i.e., size) affects trait correlations within the skull given developmental benchmarks like suckling and weaning, and 2) because the species have significantly different allometric slopes. 


Mike has previously written here that “you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”. I considered using the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species, data = gdf, print.progress = FALSE) to estimate size-free shapes for use with modularity.test, which I can do but I’m not sure the results would be correct or even meaningful. I’m also asking because I have seen it done in other papers and am unclear of the logic or interpretation. The only reason I can think of is to compare with the “full” shape modularity results to show that size/ontogeny is a driving factor, although with an ontogenetic data set where I already know size is significant, I don’t see why this would be important.


Thanks for any advice on how or if I should move forward with this approach.

Christy

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-package+unsub...@googlegroups.com.


--
Ian Dworkin
Department of Biology
McMaster University

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-package+unsub...@googlegroups.com.

Miriam Zelditch

unread,
Aug 2, 2019, 12:41:56 PM8/2/19
to geomorph R package
In this case, I'd say to use the species'-specific allometries because you aren't making any strong claims about the difference, and therefore don't need to worry about exaggerating a difference that is slight. The point is to avoid introducing what you might perceive as variation (within age) when that variation is the deviation from a misfitting model.

On Fri, Aug 2, 2019 at 12:31 PM Christy Hipsley <christy...@unimelb.edu.au> wrote:
Thanks Miriam and Ian for your responses.

In my case the 2 species in question are statistically different in ontogenetic allometries, yet still very similar in slope vector length (d=0.026, p=0.003) and slope vector angle (correlation [r] =0.911, angle=24.402 degrees, p=0.001). Even so, if I were to adjust for size to run modularity tests, can I use the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species)), or I remove size for the common allometry using procD.lm(Pcoords ~ logsize) given how similar they actually are? Doing either of these gives very different results, at least looking at their PCAs.

Thanks again for your feedback. It's helpful to think of these questions in terms of real biology, as you both suggested.


On Saturday, August 3, 2019 at 2:16:57 AM UTC+10, Miriam Zelditch wrote:
One of the main reasons for removing the effects of allometry in studies comparing integration/modularity across ontogeny is that age-classes are often heterogeneous in age; the mean shape changes over the span of the age-class so you risk confounding that change in the mean with the variation around the mean. Even if your age-classes are not that heterogenous, you might still risk confounding ontogenetic change with variation if individuals differ in rates of growth and/or development, variation that is transient although perhaps interesting. The other main reason, which is not specific to ontogenetic studies, is that size is a "global" factor, and the integration due to that might obscure more local (modular) processes. Even if you don't get statistically significant differences, erring on the side of caution in these studies would motivate using species (and perhaps also stage-specific) allometries if the ontogenetic trajectories curve.  You might lack the power to determine that the difference is significant, but you don't want to risk incorporating the deviations from common-slope model into the analysis of modularity

On Fri, Aug 2, 2019 at 12:02 PM Ian Dworkin <ian.d...@gmail.com> wrote:
Hi Christy


In general, in terms of dealing with a situation like what Mike wrote (“you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”), I would not simply use evidence of significance of the interaction between species:size (or ontogeny). One thing I often have found is that even when such an interaction term shows statistically significant differences, the angle (or correlation) between vectors (i.e. the allometry vectors for each species) suggest they are very similar. i.e. the angle is near zero (correlation near 1).  This is often observed for us with static allometry vectors in Drosophila (where we have relatively large sample sizes in our experiments). So you may wish to do some additional evaluation (including the vector correlations, R^2 etc) and visual checks (maybe with some predicted values at extreme values) to determine whether the differences are likely to be meaningful (given your understanding of the biology of these organisms etc). Also, this depends on your sample sizes. If you have relatively modest sample sizes, and evidence for a species:size effect, that starts to suggest (but still check) that the allometric vectors may be different enough to warrant some concern.  Often in such cases I test whether the assumption of common allometry makes a real difference or not and report BOTH (never do both analyses and only report one).  Chris Klingenberg talks a little bit about this issue in his allometry opus from a couple of years ago in Development, Genes and Evolution.

Since you are doing ontogenic allometry the effects are likely pretty big (as compared to static allometry within species). 

Hope this helps a bit in thinking about the problem.

Ian


On Fri, 2 Aug 2019 at 11:42, Christy Hipsley <christy...@unimelb.edu.au> wrote:

Dear all,


I have a question on using allometry “free” shapes to estimate modularity at different developmental stages - how it should be done or if it even makes sense. 


I’m focusing on 2 species for which I’ve already shown ontogenetic allometries differ. I am curious if different regions of the skull show different patterns of modularity between species and stages, e.g. neonate, juvenile, adult. 


Using the covariance ratio (CR) I see that the strength of modularity changes markedly between the juvenile and adult stages, and I am now wondering if it makes sense to also test this using regression residuals, because 1) I’m specifically interested in how ontogeny (i.e., size) affects trait correlations within the skull given developmental benchmarks like suckling and weaning, and 2) because the species have significantly different allometric slopes. 


Mike has previously written here that “you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”. I considered using the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species, data = gdf, print.progress = FALSE) to estimate size-free shapes for use with modularity.test, which I can do but I’m not sure the results would be correct or even meaningful. I’m also asking because I have seen it done in other papers and am unclear of the logic or interpretation. The only reason I can think of is to compare with the “full” shape modularity results to show that size/ontogeny is a driving factor, although with an ontogenetic data set where I already know size is significant, I don’t see why this would be important.


Thanks for any advice on how or if I should move forward with this approach.

Christy

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.


--
Ian Dworkin
Department of Biology
McMaster University

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.


--
Miriam Zelditch
Associate Research Scientist
Museum of Paleontology
University of Michigan
Ann Arbor, MI  48109-1079

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/geomorph-r-package/8a0d8876-7b22-408a-a7d1-468cab6d150c%40googlegroups.com.

Ian Dworkin

unread,
Aug 2, 2019, 1:25:42 PM8/2/19
to geomorph R package
Christy

 How many landmarks do you have? Depending on this (also 2D or 3D)  a vector correlation of 0.91 may not be as similar as you suspect. I usually do a permutation test to generate a distribution of correlations under which can help get a sense of this given the number of landmarks (and covariance pattern among them). 

However at a default (based on your results of a vector correlation of 0.91) I would be skeptical about whether an assumption of a common allometric relationship is warranted. Usually the situation I was mentioning in my previous response is when you get a significant interaction, but the correlation is still around 0.99.

Ian

On Fri, 2 Aug 2019 at 12:31, Christy Hipsley <christy...@unimelb.edu.au> wrote:
Thanks Miriam and Ian for your responses.

In my case the 2 species in question are statistically different in ontogenetic allometries, yet still very similar in slope vector length (d=0.026, p=0.003) and slope vector angle (correlation [r] =0.911, angle=24.402 degrees, p=0.001). Even so, if I were to adjust for size to run modularity tests, can I use the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species)), or I remove size for the common allometry using procD.lm(Pcoords ~ logsize) given how similar they actually are? Doing either of these gives very different results, at least looking at their PCAs.

Thanks again for your feedback. It's helpful to think of these questions in terms of real biology, as you both suggested.


On Saturday, August 3, 2019 at 2:16:57 AM UTC+10, Miriam Zelditch wrote:
One of the main reasons for removing the effects of allometry in studies comparing integration/modularity across ontogeny is that age-classes are often heterogeneous in age; the mean shape changes over the span of the age-class so you risk confounding that change in the mean with the variation around the mean. Even if your age-classes are not that heterogenous, you might still risk confounding ontogenetic change with variation if individuals differ in rates of growth and/or development, variation that is transient although perhaps interesting. The other main reason, which is not specific to ontogenetic studies, is that size is a "global" factor, and the integration due to that might obscure more local (modular) processes. Even if you don't get statistically significant differences, erring on the side of caution in these studies would motivate using species (and perhaps also stage-specific) allometries if the ontogenetic trajectories curve.  You might lack the power to determine that the difference is significant, but you don't want to risk incorporating the deviations from common-slope model into the analysis of modularity

On Fri, Aug 2, 2019 at 12:02 PM Ian Dworkin <ian.d...@gmail.com> wrote:
Hi Christy


In general, in terms of dealing with a situation like what Mike wrote (“you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”), I would not simply use evidence of significance of the interaction between species:size (or ontogeny). One thing I often have found is that even when such an interaction term shows statistically significant differences, the angle (or correlation) between vectors (i.e. the allometry vectors for each species) suggest they are very similar. i.e. the angle is near zero (correlation near 1).  This is often observed for us with static allometry vectors in Drosophila (where we have relatively large sample sizes in our experiments). So you may wish to do some additional evaluation (including the vector correlations, R^2 etc) and visual checks (maybe with some predicted values at extreme values) to determine whether the differences are likely to be meaningful (given your understanding of the biology of these organisms etc). Also, this depends on your sample sizes. If you have relatively modest sample sizes, and evidence for a species:size effect, that starts to suggest (but still check) that the allometric vectors may be different enough to warrant some concern.  Often in such cases I test whether the assumption of common allometry makes a real difference or not and report BOTH (never do both analyses and only report one).  Chris Klingenberg talks a little bit about this issue in his allometry opus from a couple of years ago in Development, Genes and Evolution.

Since you are doing ontogenic allometry the effects are likely pretty big (as compared to static allometry within species). 

Hope this helps a bit in thinking about the problem.

Ian


On Fri, 2 Aug 2019 at 11:42, Christy Hipsley <christy...@unimelb.edu.au> wrote:

Dear all,


I have a question on using allometry “free” shapes to estimate modularity at different developmental stages - how it should be done or if it even makes sense. 


I’m focusing on 2 species for which I’ve already shown ontogenetic allometries differ. I am curious if different regions of the skull show different patterns of modularity between species and stages, e.g. neonate, juvenile, adult. 


Using the covariance ratio (CR) I see that the strength of modularity changes markedly between the juvenile and adult stages, and I am now wondering if it makes sense to also test this using regression residuals, because 1) I’m specifically interested in how ontogeny (i.e., size) affects trait correlations within the skull given developmental benchmarks like suckling and weaning, and 2) because the species have significantly different allometric slopes. 


Mike has previously written here that “you cannot remove heterogenous allometric variation but must address the separate allometric patterns when making comparisons among groups”. I considered using the residuals from the species-specific anova (procD.lm(Pcoords ~ logsize * Species, data = gdf, print.progress = FALSE) to estimate size-free shapes for use with modularity.test, which I can do but I’m not sure the results would be correct or even meaningful. I’m also asking because I have seen it done in other papers and am unclear of the logic or interpretation. The only reason I can think of is to compare with the “full” shape modularity results to show that size/ontogeny is a driving factor, although with an ontogenetic data set where I already know size is significant, I don’t see why this would be important.


Thanks for any advice on how or if I should move forward with this approach.

Christy

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.


--
Ian Dworkin
Department of Biology
McMaster University

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.


--
Miriam Zelditch
Associate Research Scientist
Museum of Paleontology
University of Michigan
Ann Arbor, MI  48109-1079

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-pack...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/geomorph-r-package/8a0d8876-7b22-408a-a7d1-468cab6d150c%40googlegroups.com.

Christy Hipsley

unread,
Aug 2, 2019, 6:45:47 PM8/2/19
to geomorph R package
I have 128 landmarks in 3D, and for the 2 species I am focusing on for modularity tests I have 21 and 35 individuals. Not a huge amount but ontogenetic series can be hard to come by.

This is a useful conversation for me, because as you mention I am unsure how to interpret those results - are they similar or not? Considering their distant evolutionary relationship, which is one of the points of interest in this study, I would say that vector correlation is remarkably high, especially compared with other taxa in the data set that are closely related. Can you explain how to do the permutation test? I got the vector correlation results using the pairwise function in RRPP.

Thanks again!
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-package+unsub...@googlegroups.com.


--
Ian Dworkin
Department of Biology
McMaster University

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-package+unsub...@googlegroups.com.


--
Miriam Zelditch
Associate Research Scientist
Museum of Paleontology
University of Michigan
Ann Arbor, MI  48109-1079

--
You received this message because you are subscribed to the Google Groups "geomorph R package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geomorph-r-package+unsub...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages