[R] mlogit error
Peter Ehlers
ehlers at ucalgary.ca
Mon Feb 28 23:52:39 CET 2011
On 2011-02-28 12:54, gmacfarlane wrote:
> I actually have exactly the same question as Maha, and I wish that Z had
> answered the question instead of providing a lesson in streamlined code
> (valuable, but not helpful).
I think that Achim answered as best one could, given that Maha
neglected, as you also neglect, to provide *reproducible* code.
It's considerable easier to diagnose problems when one is able
to run the problematic code. I'm pretty sure that if you provide a
minimal, reproducible example (see the posting guide), someone
will figure out where your problem originates.
Peter Ehlers
>
> It seems as though mlogit.data repopulates the row.names field, and that
> this is where the duplication comes in.
>
> hbwtrips<-read.csv("workdata.csv",header=TRUE, sep=",",
> dec=".",row.names="ROWS")
>
> This works fine, and produces a table like the one below (but bigger). I can
> run anything I want (descriptive statistics, aov, linear regression) from
> the data.frame (so I know there are no duplicate row names in the source
> table).
>
> HHID PERID CASE ALTNUM NUMALTS CHOSEN IVTT OVTT TVTT COST DIST
> WKZONE HMZONE RSPOPDEN RSEMPDEN WKPOPDEN
> 1 2 1 1 1 5 1 13.38 2.00 15.38 70.63 7.69
> 664 726 15.52 9.96 37.26
> 2 2 1 1 2 5 0 18.38 2.00 20.38 35.32 7.69
> 664 726 15.52 9.96 37.26
> 3 2 1 1 3 5 0 20.38 2.00 22.38 20.18 7.69
> 664 726 15.52 9.96 37.26
> 4 2 1 1 4 5 0 25.90 15.20 41.10 115.64 7.69
> 664 726 15.52 9.96 37.26
> 5 2 1 1 5 5 0 40.50 2.00 42.50 0.00 7.69
> 664 726 15.52 9.96 37.26
> 6 3 1 2 1 5 0 29.92 10.00 39.92 390.81 11.62
> 738 9 35.81 53.33 32.91
> 7 3 1 2 2 5 0 34.92 10.00 44.92 195.40 11.62
> 738 9 35.81 53.33 32.91
> 8 3 1 2 3 5 0 21.92 10.00 31.92 97.97 11.62
> 738 9 35.81 53.33 32.91
> 9 3 1 2 4 5 1 22.96 14.20 37.16 185.00 11.62
> 738 9 35.81 53.33 32.91
> 10 3 1 2 5 5 0 58.95 10.00 68.95 0.00 11.62
> 738 9 35.81 53.33 32.91
> 11 5 1 3 1 4 1 8.60 6.00 14.60 37.76 4.10
> 696 667 85.35 105.93 29.45
> 12 5 1 3 2 4 0 13.60 6.00 19.60 18.88 4.10
> 696 667 85.35 105.93 29.45
> 13 5 1 3 3 4 0 15.60 6.00 21.60 10.79 4.10
> 696 667 85.35 105.93 29.45
> 14 5 1 3 4 4 0 16.87 21.40 38.27 105.00 4.10
> 696 667 85.35 105.93 29.45
> 15 6 1 4 1 4 0 30.60 8.50 39.10 417.32 14.58
> 665 8 32.31 25.61 0.00
> 16 6 1 4 2 4 0 35.70 8.50 44.20 208.66 14.58
> 665 8 32.31 25.61 0.00
> 17 6 1 4 3 4 0 22.70 8.50 31.20 105.54 14.58
> 665 8 32.31 25.61 0.00
> 18 6 1 4 4 4 1 24.27 9.00 33.27 193.49 14.58
> 665 8 32.31 25.61 0.00
> 19 8 2 5 2 4 1 23.04 3.00 26.04 29.95 6.29
> 679 704 33.04 106.52 89.24
> 20 8 2 5 3 4 0 25.04 3.00 28.04 17.12 6.29
> 679 704 33.04 106.52 89.24
> 21 8 2 5 4 4 0 25.04 23.50 48.54 100.00 6.29
> 679 704 33.04 106.52 89.24
> 22 8 2 5 5 4 0 34.35 3.00 37.35 0.00 6.29
> 679 704 33.04 106.52 89.24
> 23 8 3 6 2 5 0 11.14 3.50 14.64 14.00 2.83
> 679 665 33.04 106.52 32.31
> 24 8 3 6 3 5 0 13.14 3.50 16.64 8.00 2.83
> 679 665 33.04 106.52 32.31
> 25 8 3 6 4 5 1 3.95 16.24 20.19 100.00 2.83
> 679 665 33.04 106.52 32.31
> 26 8 3 6 5 5 0 16.05 3.50 19.55 0.00 2.83
> 679 665 33.04 106.52 32.31
> 27 8 3 6 6 5 0 0.00 0.00 60.10 0.00 2.83
> 679 665 33.04 106.52 32.31
> 28 12 2 7 1 6 1 8.80 3.00 11.80 31.65 3.44
> 667 682 29.45 22.42 6.57
> 29 12 2 7 2 6 0 13.80 3.00 16.80 15.83 3.44
> 667 682 29.45 22.42 6.57
> 30 12 2 7 3 6 0 15.80 3.00 18.80 9.04 3.44
> 667 682 29.45 22.42 6.57
>
>
> I then run
>
>> hbwmode<-mlogit.data(hbwtrips,varying=c(8:11),shape="long",
>> choice="CHOSEN", alt.var="ALTNUM", row.names="ROWS")
>
> which returns
>
> Error in `row.names<-.data.frame`(`*tmp*`, value = c("1.1", "1.2", "1.3", :
> duplicate 'row.names' are not allowed
> In addition: Warning message:
> non-unique values when setting 'row.names': ‘1.1’, ‘10.1’, ‘10.4’, ‘100.4’,
> ‘1000.2’, ‘1001.1’, ‘1001.3’, ‘1002.2’, ‘1002.3’, ‘1003.4’, ‘1004.1’,
> ‘1004.2’, ‘1005.1’, ‘1005.3’, ‘1007.2’, ‘1008.3’, ‘1008.4’, ‘1009.1’,
> ‘1009.2’, ‘1009.3’, ‘101.1’, ‘1010.4’, ‘1011.1’, ‘1012.2’, ‘1013.3’,
> ‘1013.4’, ‘1015.1’, ‘1016.2’, ‘1018.3’, ‘1018.4’, ‘1019.1’, ‘1019.2’,
> ‘102.1’, ‘102.2’, ‘102.3’, ‘1020.3’, ‘1020.4’, ‘1021.1’, ‘1022.2’, ‘1022.3’,
> ‘1023.4’, ‘1024.1’, ‘1024.2’, ‘1025.3’, ‘1025.4’, ‘1026.5’, ‘1027.1’,
> ‘1027.2’, ‘1028.3’, ‘1029.1’, ‘1029.4’, ‘103.2’, ‘103.3’, ‘1030.2’,
> ‘1030.3’, ‘1031.1’, ‘1031.4’, ‘1032.2’, ‘1032.3’, ‘1033.1’, ‘1033.2’,
> ‘1034.3’, ‘1035.1’, ‘1035.2’, ‘1036.1’, ‘1036.3’, ‘1037.2’, ‘1037.3’,
> ‘1038.1’, ‘1 [... truncated]
>
> Did you ever find a real answer, Maha?
>
More information about the R-help
mailing list