Standaard krijgt niet u dezelfde resultaten uit 'rxGlm' als in 'glm'.
Eigenlijk moet u de argumenten dropFirst op TRUE en de 'dropMain' ingesteld op FALSE als ook de resultaten van glm, reproduceren omdat
SAS dus iets anders dan standaard in plaats van R standaard dus iets anders dan RevoScaleR gebruikt.
Hier is sommige voorbeeldgegevens en de code die ik gebruikt voor het testen van dit probleem wordt geïllustreerd hoe u de twee functies om overeenkomende resultaten opleveren:
basictestdata <- data.frame( Factor1 = as.factor(c(1,1,1,1,2,2,2,2)),
Factor2 = as.factor(c(1,1,2,2,1,1,2,2)),
Discount = c(1,2,1,2,1,2,1,2),
Exposure = c(24000, 40000, 7000, 14000, 7500, 15000, 2000, 5600),
PurePrem = c(46,32,73,58,48,25,220,30))
GLM.1 <- glm(PurePrem ~ Factor1 * Factor2 - 1,
family = tweedie(var.power = 1.5, link.power = 0),
data = basictestdata, weights = Exposure
, offset = log(Discount))
rxGlm.1 <- rxGlm(PurePrem ~ Factor1 * Factor2 - 1 + offset(log(Discount)),
family = rxTweedie(var.power = 1.5, link.power = 0),
data = basictestdata, fweights = "Exposure", dropFirst = TRUE, dropMain = FALSE)
coef(GLM.1)
coef(rxGlm.1)