Было бы полезно узнать, как выглядят FormA и FormB. Однако, возможно, это уже делает свое дело:
scoresQA <- t(apply(FormA[-1,-1], 1, function (x) as.numeric((FormA[1,-1]==x))))
scoresPerQA <- apply(scoresQA, 2, sum)
QA_percentage <- scoresPerQA / nrow(scoresQA)
scoresQB <- t(apply(FormB[-1,-1], 1, function (x) as.numeric((FormB[1,-1]==x))))
scoresPerQB <- apply(scoresQB, 2, sum)
QB_percentage <- scoresPerQB / nrow(scoresQB)