Dear Dean,

Thank you for pointing out my conceptual mistake and explaining it in a way
easy to understand. For my data, I think the interaction is not
biologically meaningful, so I do not intend to further investigate the
difference in allometric trajectories.

Following discussion is for everyone, I will elaborate more and see if
people here are interested on my specific case -- maybe my case could help
other students like me too: I have two groups, A & B. A has strong
allometry but B does not (I tried running regression of shape~size on A & B
separately, B gave insignificant result and low Rsq -- which is the reason
why I have no interest on difference in allometric trajectories). But when
I ran the regression on the full dataset with shape~size*group, I got
significant size:group term with low Rsq (0.03) and significant HOS test
with large angle. Shape prediction from common slope (with a simple
shape~size on full dataset) did not account for the true allometric changes
of group A (from separate shape~size for A) like what Dean said but did
captured most of it, and is off for group B (but then group B has little &
non-significant allometric changes...). Any further opinion will be
appreciated, many thanks.

Best,
Jin Yung

On Tue, Dec 13, 2016 at 10:28 PM, Adams, Dean [EEOBS] <[email protected]>
wrote:

> Jin Yung,
>
>
> Before sorting out an R-code equivalent for what MorphoJ does, I recommend
> that you revisit and re-read the last few posts on Morphmet concerning
> statistical and biological significance of comparisons of slopes.  The
> important thing to determine first and foremost is whether or not the
> significant interaction term in your model is biologically meaningful (ie,
> does it represent the underlying patterns in the data or is it spurious for
> some reason). If it does represent the underlying patterns in  your data,
> than any pooled-group or common regression-based allometric residuals makes
> no sense.
>
>
>
> Think of it this way: both a common slope model and a pooled within-group
> model assume that patterns of within-group covariation are equivalent (‘the
> same’ in vernacular speech).  If that assumption can be made, then one can
> fit a common slope or pooled-within group model and obtain so-called
> allometry-free residuals.  However, if the groups really do have different
> slopes, that means the within-group allometric trajectories are different.
> In this case it makes no sense to obtain allometric residuals from a common
> slope model, or a pooled-within group model, as these models do not account
> for the different shape~size relationships in each group. Thus, the
> common-slope analysis is not accounting for the actual allometric patterns
> in any of the groups. What that means is that the residuals for group A are
> not residuals from the shape~size allometric relationship in group A, but
> rather are the allometric residuals of this group +/- the difference in
> that groups’ slope versus the common-slope model. And likewise for group B,
> group C, etc.   Importantly, note that the difference in actual
> within-group residuals from common-slope residuals is not a constant across
> groups: meaning that there is no way to make these residuals comparable
> units for downstream analyses.
>
>
>
> Additionally, obtaining residuals from a separate slopes model (i.e., a
> model containing the interaction term, as you have in your post) also makes
> little sense because here the residuals are obtained from different
> allometric trajectories for each group.  Thus, those residuals are not
> comparable, because they have accounted for a different shape~size
> relationship for each group. In other words, they are residuals of
> different models for each group, and are not comparable units for
> subsequent analyses either.
>
>
>
> Thus it is ONLY the case that allometric residuals can be used in
> downstream analyses when those groups are deemed to have a common
> allometric slope.  When they do not, allometric residuals from a common
> model or separate models, should not be placed together and used in
> subsequent analyses.
>
>
>
> What I’m getting at here is that when the allometric slopes between groups
> truly are different, then biology has changed your question. The question
> now is in understanding how those allometric trajectories differ, not
> whether the groups differ in the allometric residuals themselves. That is
> not always what the biologist sets out to ask, but sometimes the data tell
> us what we should be asking. Data has a funny way of refocusing our gaze to
> the questions we should have asked!
>
>
>
> ‘The data are’ as the great Dr. Sokal told many of us over the years.
>
>
> Hope this helps.
>
>
>
> Best,
>
>
> Dean
>
>
>
>
>
> Dr. Dean C. Adams
>
> Professor
>
> Department of Ecology, Evolution, and Organismal Biology
>
>        Department of Statistics
>
> Iowa State University
>
> www.public.iastate.edu/~dcadams/
>
> phone: 515-294-3834 <(515)%20294-3834>
>
>
>
> *From:* wongjinyung [mailto:[email protected]]
> *Sent:* Tuesday, December 13, 2016 7:53 AM
> *To:* MORPHMET <[email protected]>
> *Subject:* [MORPHMET] allometry adjustment in R
>
>
>
> Dear all,
>
>
> My goal is to carry out allometry adjustment to produce 'allometry-free'
> shapes and visualize the result. This has been brought up a lot recently,
> but I still wish to check whether what I did was correct, both in terms of
> concepts and implementation.
>
> Currently I'm doing allometry adjustment in R in this way (without taking
> group into consideration):
>
> mod1 <- lm(shape ~ size)
> mean.shape <- apply(shape, 2, mean)
> allometry.free.shape <- t(apply(mod1$residuals, 1, `+`, mean.shape))
>
> But I also have a factor (let's call it 'group'). When I run Procrustes
> ANOVA using procD.lm in geomorph, both group and size:group terms are
> significant, and HOS test in procD.allometry is significant too. If I want
> to take this into consideration to get the allometry free shape, what can I
> do?
>
> I came across MorphoJ's procedure of pooled within group regression and I
> think maybe this is what I am looking for (side note: I'm very confused on
> the difference between what I read from the discussion on this forum some
> time ago
> <https://groups.google.com/a/morphometrics.org/forum/#!topic/morphmet/K7vtiKl2xhI>
> and MorphoJ's explanation on pooled within group regression, I am not good
> in stats). Following is the explanation from MorphoJ's user manual
> <http://www.flywings.org.uk/MorphoJ_guide/frameset.htm?covariation/regression.htm>
> :
>
> *The bottom element is for selecting a pooled within-group regression.
> This type of regression is suitable, for instance, for removing the effect
> of within-group variation of a variable such as size, age or environmental
> factors before comparisons between groups. The analysis is performing a
> regression using the deviations of the dependent and independent variables
> from the respective group means (the group means are added back to the
> residuals and predicted values in the output dataset). *
>
> How can I do this in R? This is what I have came out with:
>
> mod2 <- lm(shape ~ group)
> mod3 <- lm(shape ~ size * group)
> allometry.free.shape <- mod3$residuals + predict(mod2)
>
> The output visualization made sense but I am not confident. Did it do what
> MorphoJ does? If it was wrong, how can I do it? And is it conceptually
> correct to get allometry free shapes this way for data with significant
> size:group interaction?
>
> Many thanks
>
> Cheers,
> Jin Yung
>
> --
> MORPHMET may be accessed via its webpage at http://www.morphometrics.org
> ---
> You received this message because you are subscribed to the Google Groups
> "MORPHMET" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
>

-- 
MORPHMET may be accessed via its webpage at http://www.morphometrics.org
--- 
You received this message because you are subscribed to the Google Groups 
"MORPHMET" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].

Reply via email to