I have a series of beta regressions I have performed on the effects of tissue type, year, and age class on the eccentricity of ellipses, which varies between 0 and 1. I have created interaction models and a global model for all combinations of these independent variables except age and year, because not all age classes exist in each year (I think this is what is meant by "not full rank", but here's the error message: "Error in optim(par = start, fn = loglikfun, gr = if (gradient) gradfun else NULL, : non-finite value supplied by optim"). Specifically, I only have the HY class in 2021 and the JU class in 2019. That being said, based on how the distribution of my data breaks down by independent variable, I suspect that an age x year model would be important for capturing the skew in my underlying data (see below images compared to the black line representing uncategorized data density in the last image).
When I plot the fitted distributions for the best and worst models (see image below), none of them appear to capture the left skew very well, and I believe a betareg(eccentricity ~ age*year, data = data)
model would, but I can't run that model. So I have two questions: 1) Is there any way to address the lack of full rank and still be able to run the age x year betareg, and if not, 2) should I be choosing a different modeling approach to better capture the wonkiness of the underlying distribution? Generalized Additive Models have been suggested to me...