Hello I have a dataset which looks as follows (the below is just an excerpt):
caseid
7
7
7
7
8
8
8
8
9
9
9
9
10
10
10
10
act
7
23
45
6810
7
23
45
6810
7
23
45
6810
7
23
45
6810
rankact
3
1
1
3
4
2
1
3
4
3
1
1
4
2
1
3
act_specific_v1
1
2
2
1
4
2.5
1
4
2
1
1
1.333333
6
2
1
4.666667
act_specific_v2
6
1
1
5.666667
3
2.5
1
3.333333
2
1
1
1
6
2
1
4.666667
Dist_Inj
.6970438
.6970438
.6970438
.6970438
-1.176087
-1.176087
-1.176087
-1.176087
-.3863783
-.3863783
-.3863783
-.3863783
.6934251
.6934251
.6934251
.6934251
Proc_Inj
1.377651
1.377651
1.377651
1.377651
-1.454568
-1.454568
-1.454568
-1.454568
-1.058589
-1.058589
-1.058589
-1.058589
1.270909
1.270909
1.270909
1.270909
case id represents individuals, act is the choice of actions each case id has. rankact is the rank of each action that the individual chooses. higher rank means higher preference. then i have two act-specific variables. and then i finish with two case-specific variables.

i run cmroprobit as follows:
cmroprobit rankact c.Q62_1_ c.Q61_1_, casevars(c.Dist_Inj c.Proc_Inj) basealternative(23) ltolerance(1e-4)

then i want to run margins to analyse action ranking when Dist_Inj goes up from -4.5 to 1.

margins, at(Dist_Inj=(-4.5(.5)1))

Turns out margins only calculates margins for act 1, and for all other acts it shows (empty), without any error message. Can anyone help?