Splitting up the long data entry command should get part of the way there, in case that command causes anyone errors as it did for me:
data1 = data.frame(B = c("m","m","m","m","m", "m", "f","f","f","f","f"), G = c("s","s","s","u","u", "u", "k","k","k","r","r"), ZN =c(78,82,34,67,98,56,37,45,27,18,34), GFR=c(120,100,90,60,100,110,100,90,95,87,96), g1 = c(35, 2, 3, 4, 5, 6, 7, 10, 12, 41, 76), g2 = c(20, 2, 7, 2, 8, 5, 5, 3, 7, 2, 12), g3 = c(5, 0, 4, 5, 2, 4, 8, 9, 20, 1, 11), g4 = c(1,3,4,5,7,3,1,5,7,3,10), g5 = c(20,23, 27, 35, 12, 10, 17, 24, 21, 15, 16), g6 = c(13,13,115,17,14,12,19,6,7,8,4))
data2 = data.frame (g7 = c(5, 0, 4, 5, 2, 4, 8, 9, 20, 1, 11), g8 = c(1,3,4,5,7,3,1,5,7,3,10), g9 = c(20,23, 27, 35, 12, 10, 17, 24, 21, 15, 16), g10 =c(13,13,115,17,14,12,19,6,7,8,4))
data=cbind(data1,data2)
str(data)
But I continue to get errors with your last command: " In anova.lmlist(object, ...) : models with response ‘"NULL"’ removed because response differs from model 1"
The problem seems to be that R is treating your two models as non-nested models, as explained here. Perhaps this is no help, but if you break things up into smaller chunks, the anova works:
a=lm(GFR ~ g1 + ZN, data=data)
b=lm(GFR ~ g1 + ZN + B, data=data)
anova(a,b,test="LRT")
Analysis of Variance Table
Model 1: GFR ~ g1 + ZN
Model 2: GFR ~ g1 + ZN + B
Res.Df RSS Df Sum of Sq Pr(>Chi)
1 8 2017.2
2 7 2016.4 1 0.85327 0.9566