Question re permutation tests for a relatively complex data set I regret that I cannot be overly explicit due to confidentiality agreements. I will try to state my problem by analogy.
Suppose that you have two groups of people, one with a condition and one normal. You make roughly 80 measurements of circumference of different body parts on each person. Clearly, these measurements will all be correlated, some more highly than others (measurements that are close to each other will tend to be more correlated than others).
You have an a priori hypothesis that the largest differences between groups will occur at certain places (e.g. "patients with the condition will have larger arms than patients without"). 
As a first step, we looked at t-tests comparing the measurements between the groups; there were quite a few significant differences and most of the largest differences were in the hypothesized region. 
My idea was to use some form of permutation test to account for multiple testing while accounting for the correlations. This would not only be to test the specific hypothesis but to correct for multiple testing on all 80 measurements (instead of using Bonferroni). However, I need help:
1) Is this reasonable?
2) If reasonable, any guidance on how to do it in either R or SAS? (any hints or references welcome)
ADDING A REFERENCE
One paper that does something similar to what I want is
Nichols and Holmes 
But that is for FMRI data, which is somewhat different; and they give a program in Matlab, which I don't have or know. Also, they don't consider exactly the sort of problem I have. 
 A: The first issue that appears to me is that of multiplicity. If our objective is to consider each of the 80 places on the body where these individuals are measured and test whether there's a difference between diseased and healthy individuals, then having a 0.05 level test at each of the 80 places will result in an average of 4 type I errors. That's no good.
Correcting this by using Bonferroni would yield a valid test for each site but is extremely conservative due to the assumed independence between each anatomical site (which we know to be false).
If $n \gg 80$, then it would be possible to simultaneously test the partial correlations for conditional independence using a multivariate regression model with fixed effects for each site and an interaction with disease indicator. Using an L-1 penalty for the interaction parameters would force small differences toward zero and give you more power to estimate larger differences. Alternately, if data were matched (paired), you can compute differences in diseased and undiseased individuals and fit the differences model with intercept through the origin.
If you're doing a randomization / permutation, it should be possible to calibrate it using a simulation. My question to you is this: the permutation test will only give you the joint sampling distribution of the model parameters under the null hypothesis. What next? What's your plan to use that information and obtain a calibrated and well powered test of hypothesis about the 80 sites?
A: I think your permutation idea is solid. Assume there are only two measurements y1 and y2. Here's how I'd do it in R:
set.seed(1245)
group <- c(rep(0, 50), rep(1, 50))
z <- rnorm(100)  # Direct common cause of y1 and y2
y1 <- .7 * group + 1.5 * z + rnorm(100) # explanitory variable
y2 <-  0 * group + 1.5 * z + rnorm(100)

t1.stat <- t.test(y1[group == 0], y1[group == 1])$statistic
    t2.stat <- t.test(y2[group == 0], y2[group == 1])$statistic

cat("t statistics - Var 1:", t1.stat, " Var 2:", t2.stat, "\n")

t1.collection <- c()
t2.collection <- c()

for( rep in 1:1000) {
  group <- sample(group, 100)
  t1 <- t.test(y1[group == 0], y1[group == 1])$statistic
  t2 <- t.test(y2[group == 0], y2[group == 1])$statistic
  t1.collection <- c(t1.collection, t1)
  t2.collection <- c(t2.collection, t2)
}
hist(t1.collection)
hist(t2.collection)

cat("Permutation p-values - Var 1 ", mean(t1.collection >= abs(t1.stat)),
    "Permutation p-values - Var 2 ", mean(t2.collection >= abs(t2.stat)), "\n")

The one thing that this doesn't cover is that you have prior beliefs about which variables are most likely to pop. Sounds like you'd need to go bayesian for that, and your model looks like a standard multivariate regression (all variables have the same single group regressor). Sometimes I wish I was a bayesian!
