Вот вымышленный набор данных, состоящий из 10 генети c строк и набора из 7 параметров:
data.1<-read.csv(text="
line,a,b,c,d,TF1,TF2,TF3
line1,0.716954406,0.948933475,0.723180846,0.122529549,-1,-1,-1
line2,0.443478142,0.052760906,0.814897888,0.072935389,1,-1,1
line3,0.362944986,0.892056197,0.243860823,0.197642553,1,1,1
line4,0.516451924,0.742629204,0.170810671,0.886592564,-1,-1,-1
line5,0.262766818,0.676690503,0.585481859,0.544782573,1,1,1
line6,0.437307171,0.326012372,0.194698638,0.992025701,1,1,1
line7,0.018027541,0.241761164,0.068979207,0.170437435,1,-1,1
line8,0.663364588,0.237946201,0.056954659,0.953926657,1,1,1
line9,0.062131129,0.066129381,0.156008808,0.235503941,-1,-1,-1
line10,0.018027541,0.241761164,0.06897920,0.170437435,-1,-1,-1
")
Я пытаюсь применить следующую функцию к каждой строке и получить значение sim:
flow.function <- function(a, b, c, d, TF1, TF2, TF3) {
sim <- 44.18 + 4.026*(a-12.7) + 0.195*(b-18.21) - 1.363*(c-27.4) - 0.60*(d-16.12) - 1.3*TF1 - 2.279*TF2 + 1.59*TF3
return(sim)
}
Затем я применяю строку функции:
data.1$sim.results <- apply(data.1, 1, flow.function)
И это ошибка, которую я получаю:
Error in a - 12.7 : non-numeric argument to binary operator
Я понимаю ошибка указывает на значение «12,7» в формуле, что я понятия не имею, почему я получаю эту ошибку, поскольку 12,7 - это число. Я наверняка что-то упускаю из виду c.
Любая помощь будет очень признательна.