Extracts coefficients from an existing SuSiE-inf fit or fits `susieR::susie()` with `unmappable_effects = "inf"`.
Arguments
- X
Genotype matrix. Required when `susie_inf_fit` is NULL.
- y
Phenotype vector. Required when `susie_inf_fit` is NULL.
- susie_inf_fit
Optional fitted SuSiE-inf object.
- retain_fit
If TRUE, stores the fitted object as an attribute on the returned weights.
- ...
Additional arguments passed to `susieR::susie()` when fitting.
Non-zero weights with zero PIPs
SuSiE-inf decomposes effects into a mappable component (driven by `alpha * mu`, reported as per-variant PIPs) and an infinitesimal component (driven by `theta`). When the fit converges with no mappable effects – all `V` and `mu` zero, so every `pip == 0` – the returned weights are still non-zero because `susieR::coef.susie` adds `theta / X_column_scale_factors` to the mappable coefficient. This is intentional: it captures diffuse polygenic signal that the mappable component could not localize to any credible set. Consumers that interpret per-variant PIPs as a gate on whether to use the weights should be aware that low or zero PIPs do not imply zero TWAS weights here.