{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreibqafkvvxi2y4d3c7edv5tsblwwyrfaknlopmgfstupdgulhfuwmi",
"uri": "at://did:plc:wwyqal4cnqhuwyacdj7rqq3n/app.bsky.feed.post/3migspv6j57x2"
},
"path": "/t/is-gvif-meaningful-for-a-reduced-interaction-block-created-from-manually-coded-factor-x-treatment-terms/28686#post_1",
"publishedAt": "2026-04-01T12:10:23.000Z",
"site": "https://discourse.datamethods.org",
"textContent": "I’m fitting a survival model with a multi-level factor (HistologyClass) and binary treatment variables (Radiotherapy, Chemotherapy). I do not want the full HistologyClass * Treatment interaction, because I only want a selected subset of clinically relevant histology-specific treatment interactions.\n\nSo instead of writing the full interaction in the formula, I manually create terms such as:\n\n\n RT_Medulloblastoma = I(Radiotherapy == \"Yes\") * I(HistologyClass == \"Medulloblastoma\")\n CT_Embryonal = I(Chemotherapy == \"Yes\") * I(HistologyClass == \"Embryonal\")\n\n\n\nand then fit a model like:\n\n\n Y ~ HistologyClass + Radiotherapy + Chemotherapy +\n RT_Medulloblastoma + CT_Embryonal + ...\n\n\n\nMy question is specifically about GVIF, not significance testing or whether to keep/drop terms.\n\n**Each manually coded interaction is just a separate 1 d.f. column, but collectively they seem to form a reduced multi-d.f. interaction block. Is it mathematically valid to compute a GVIF for that reduced block? If so how does one compute that?**\n\nI’m using rms::orm, there isn’t a function for calculating GVIF in rms and the car package doesn’t accept orm models, therefore I am planning to write it out myself.",
"title": "Is GVIF meaningful for a reduced interaction block created from manually coded factor × treatment terms?"
}