### R代码从vignette源的TypeInfoNews。Rnw ' ################################################### ### 代码块1号:TypeInfoNews。Rnw: 24 - 25日 ################################################### 选项(宽度= 45 ) ################################################### ### 代码块2号:oneWayAnova ################################################### oneWayAnova < -函数(响应,预测){expr < -替代(反应~预测)< - lm(作为结果。公式(expr))方差分析(结果)}copyOfOneWayAnova < - oneWayAnova ################################################### ### 代码块3号:analysis1 ################################################### ctl < - c(4.17, 5.58, 5.18, 6.11, 4.50, 4.61, 5.17, 4.53, 5.33, 5.14)泰爱泰党< - c(4.81, 4.17, 4.41, 3.59, 5.87, 3.83, 6.03, 4.89, 4.32, 4.69)组< - gl(2、10、20、标签= c(“ctl”、“泰爱泰党”))重量< - c (ctl,泰爱泰党)oneWayAnova(重量、组 ) ################################################### ### 代码块4号:TypeInfoNews。Rnw: 99 - 100 ################################################### 库(TypeInfo ) ################################################### ### 代码块5号:TypeInfoNews。Rnw: 105 - 111 ################################################### typeInfo (oneWayAnova) < - SimultaneousTypeSpecification (TypedSignature(响应=“数值”,预测=“因素”),returnType = "方差分析 ") ################################################### ### 代码块6号:typedFunc ################################################### oneWayAnova(体重组 ) ################################################### ### 代码块7号:内省(eval = FALSE ) ################################################### ## typeInfo (oneWayAnova ) ################################################### ### 代码块8号:typeInfoOutupt ################################################### typeInfo (oneWayAnova) ngroup < -。数字(集团)res < tryCatch (oneWayAnova(重量,ngroup),错误= function (err){猫(“错误:conditionMessage(错),“\ n ") }) ################################################### ### 代码块9号:sgroup (eval = FALSE ) ################################################### ## ngroup < -。数字(集团)# # res < - (oneWayAnova(重量,ngroup试试 )) ################################################### ### 代码块10号:TypeInfoNews。Rnw: 187 - 197 ################################################### oneWayAnova < - copyOfOneWayAnova typeInfo (oneWayAnova) < - SimultaneousTypeSpecification (TypedSignature(响应=“数值”,预测=“因素”),TypedSignature(响应=“数值”,预测=“数字”),returnType = "方差分析 ") ################################################### ### 代码块11号: integerVals ################################################### iweight <- as.integer( weight ) oneWayAnova( iweight, group ) ################################################### ### code chunk number 12: strictIs (eval = FALSE) ################################################### ## oneWayAnova <- copyOfOneWayAnova ## typeInfo(oneWayAnova) <- ## SimultaneousTypeSpecification( ## TypedSignature( ## response = StrictIsTypeTest("numeric"), ## predictor = InheritsTypeTest("factor")), ## returnType = StrictIsTypeTest("anova")) ## oneWayAnova(iweight, group) # ERROR ################################################### ### code chunk number 13: dynamicTypeTest (eval = FALSE) ################################################### ## typeInfo(oneWayAnova) <- ## SimultaneousTypeSpecification( ## TypedSignature( ## response = "numeric", ## predictor = quote( ## length(predictor) == ## length(response) && ## is(predictor, "factor"))), ## returnType = StrictIsTypeTest("anova")) ## short <- weight[-1] ## oneWayAnova(short, group) # ERROR ################################################### ### code chunk number 14: IndependentTypeSpecification ################################################### oneWayAnova <- copyOfOneWayAnova typeInfo(oneWayAnova) <- IndependentTypeSpecification( response = "numeric", predictor = c( "factor", "numeric" ))