# What causes the parameter phi (precision) to be very small in beta regression (by betareg in R)?

I tried to do a beta regression for a variable affected by age and intimacy, but it did not work well. The value of phi (precision) estimated by maximum likelihood method is very small, and when I actually draw the estimated distribution, I don't think it is modeling well. What could be the cause? Or is there any other better regression model?

I am thinking that maybe it is because there are too few variations in the explanatory variables, but I am not sure.

Here is a summary of my trial.

data(n=128):

y: the dependent variable

x_1: an explanatory variable of "age-group"

x_2: an explanatory variable of "Intimacy-level"

(the full data shown at the bottom)

code:

betareg(y ~ x_1 + x_2, data = data)

result:

Mu Coefficients (mean model with logit link):

Estimate
(intercept) -3.17
x_1 1.12
x_2 0.12

Phi coefficients (precision model with identity link):

Estimate
(phi) 0.74

data(full):

        y x_1 x_2
1   0.999   4   0
2   0.999   4   0
3   0.500   4   0
4   0.999   4   0
5   0.999   4   0
6   0.999   4   0
7   0.999   4   0
8   0.999   4   0
9   0.999   4   0
10  0.999   4   0
11  0.500   4   0
12  0.999   4   0
13  0.999   4   0
14  0.999   4   0
15  0.500   4   0
16  0.500   4   0
17  0.999   4   1
18  0.999   4   1
19  0.500   4   1
20  0.999   4   1
21  0.999   4   1
22  0.999   4   1
23  0.999   4   1
24  0.999   4   1
25  0.999   4   1
26  0.999   4   1
27  0.999   4   1
28  0.999   4   1
29  0.999   4   1
30  0.999   4   1
31  0.500   4   1
32  0.999   4   1
33  0.500   3   1
34  0.999   3   1
35  0.001   3   1
36  0.999   3   1
37  0.999   3   1
38  0.001   3   1
39  0.999   3   1
40  0.999   3   1
41  0.500   3   1
42  0.500   3   1
43  0.500   3   1
44  0.500   3   1
45  0.999   3   1
46  0.500   3   1
47  0.001   3   1
48  0.500   3   1
49  0.500   3   1
50  0.999   3   1
51  0.500   3   1
52  0.999   3   1
53  0.999   3   1
54  0.001   3   1
55  0.999   3   1
56  0.999   3   1
57  0.500   3   1
58  0.500   3   1
59  0.999   3   1
60  0.999   3   1
61  0.999   3   1
62  0.999   3   1
63  0.001   3   1
64  0.999   3   1
65  0.001   2   1
66  0.500   2   1
67  0.001   2   1
68  0.001   2   1
69  0.001   2   1
70  0.001   2   1
71  0.500   2   1
72  0.001   2   1
73  0.001   2   1
74  0.001   2   1
75  0.001   2   1
76  0.001   2   1
77  0.001   2   1
78  0.001   2   1
79  0.001   2   1
80  0.001   2   1
81  0.001   2   1
82  0.500   2   1
83  0.001   2   1
84  0.001   2   1
85  0.001   2   1
86  0.001   2   1
87  0.500   2   1
88  0.001   2   1
89  0.001   2   1
90  0.001   2   1
91  0.001   2   1
92  0.001   2   1
93  0.001   2   1
94  0.001   2   1
95  0.001   2   1
96  0.001   2   1
97  0.001   1   1
98  0.500   1   1
99  0.001   1   1
100 0.001   1   1
101 0.001   1   1
102 0.001   1   1
103 0.001   1   1
104 0.001   1   1
105 0.001   1   1
106 0.001   1   1
107 0.001   1   1
108 0.001   1   1
109 0.001   1   1
110 0.001   1   1
111 0.001   1   1
112 0.001   1   1
113 0.001   1   1
114 0.500   1   1
115 0.001   1   1
116 0.001   1   1
117 0.001   1   1
118 0.001   1   1
119 0.001   1   1
120 0.001   1   1
121 0.001   1   1
122 0.001   1   1
123 0.001   1   1
124 0.001   1   1
125 0.001   1   1
126 0.001   1   1
127 0.001   1   1
128 0.001   1   1

• How is y measured?
– whuber
Commented Apr 18 at 15:46
• Y is the value of the grammaticality judgment for a given language form. As in my reply to Luka, actually, it was originally a 3-step count data, and now I was able to get good results with the normal logistic model (binominal-logit). Commented Apr 18 at 22:12

## 2 Answers

Your $$Y$$ only takes the value $$0.001, 0.5$$ and $$0.999$$. That is not a good fit a beta-Regression which models a continuum of proportions. Also 0.5 to 0.999 is a huge spread, so the precision has to be low.

I'd recommend an ordinal logistic model with three categories. See here: https://stats.oarc.ucla.edu/r/dae/ordinal-logistic-regression/

• Thank you for the useful advice! Actually, the Y was originally a 3-step count data. As you said, I was able to get good results with the normal logistic model (binominal-logit)! Commented Apr 18 at 22:09
• @TomoChang So you have 3 binomial measures for each of your 128 "language forms"? If so you should probably introduce a random effect (1|form) to account for the correlation among those 3 measures. Relevant help: bbolker.github.io/mixedmodels-misc/glmmFAQ.html Commented Apr 19 at 9:28

In addition to Lukas's excellent point about your Y value, I think you are onto something about your x values. One is categorized age. It would be better to use age in years (and maybe add a spline). Categorizing a continuous variable is almost always a bad idea, and, while I don't know what your dependent variable is, there are few human traits that are linearly related to age over the whole lifespan (although you also don't say what the range of age is -- if this is just, say people in their 30s, a spline might not be needed).

The other is intimacy level. If this is from some psychological instrument that gives a more fine grained score, then I would use that.

• Thank you for your kind advice. It is indeed important to increase the scale of explanatory variables. I got a good regression for now with binominal-logit's GLM, but I will consider increasing the scale. Commented Apr 18 at 22:16