[R] paired t-test. Need to rearrange data?

Henrik Parn henrik.parn at bio.ntnu.no
Sun Aug 6 16:13:29 CEST 2006

Dear all,

I have received some data arranged like this:

# original data
id <- rep(letters[1:6], each=2)
time <- as.factor(rep(1:2, 6))
y <- as.vector(replicate(6, c(rnorm(n=1, mean=1), rnorm(n=1, mean=2))))
test.data <- data.frame(id, time, y)

I would like to perform a paired t-test of the y-values at time=1 
against those at time=2, with samples paired by their id. Is it 
necessary to arrange the data in a format like this:   

# rearranged data
id <- letters[1:6]
y1 <- replicate(6, rnorm(n=1, mean=1)) # y-value at time = 1
y2 <- replicate(6, rnorm(n=1, mean=2)) #  y-value at time = 2
test.data2 <- data.frame(id, y1, y2)

...in order to perform a paired t-test?
t.test(y1, y2, paired=T)

If yes, which is the most convenient way to rearrange the data?
Or is it possible to apply the paired t-test function to the original 
data set?

And a side question: In my examples, I suppose can I use set.seed to 
reproduce the 'rnorm-values' created in the 'original data' also in my 
the 'rearranged data'. Can someone give me a hint of how to apply the 
same 'seed' to all the rnorms?

Thanks a lot in advance!


More information about the R-help mailing list