В зависимости от того, хотите ли вы классное или быстрое решение, вы можете использовать либо
diag(cor(t(df1), t(df2)))
, что круто, но расточительно (потому что на самом деле вычисляет корреляции между всеми строками, которые вам на самом деле не нужны, поэтому они будут отброшены) или
A <- as.matrix(df1)
B <- as.matrix(df2)
sapply(seq.int(dim(A)[1]), function(i) cor(A[i,], B[i,]))
, который делает только то, что вы хотите, но немного больше, чтобы напечатать.