Вы можете использовать apply
> apply(y[,-1],1,function(x) cor(x[1:2],x[3:4]))
[1] -1 -1 1 -1 1
или ddply
(хотя это может быть излишним, и если две строки имеют одинаковые group
, это сделает соотношение столбцов a & b и c & dобе эти строки):
> ddply(y,.(group),function(x) cor(c(x$a,x$b),c(x$c,x$d)))
group V1
1 a -1
2 b -1
3 c 1
4 d -1
5 e 1