首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mlogit中的持久计算奇点

mlogit中的持久计算奇点
EN

Stack Overflow用户
提问于 2017-08-14 04:06:27
回答 1查看 340关注 0票数 2

我的问题与尝试使用mlogit包时的持续计算奇点有关。

首先,关于我的数据:

我的数据涉及到在体育选秀中预测选择。每支球队都从相同的球员库中进行有序的选择,并具有团队和球员的属性。因此,在mlogit语言中,每个“团队”都是一个个体,每个“玩家”都是一个替代者。为了提供一个过于简化的例子,假设五支球队各自选择了一名球员。

代码语言:javascript
复制
Pick      Player  PPG  Age Team
1    Ben Simmons 19.2  19  PHI
2 Brandon Ingram 17.3  18  PHI
3   Jaylen Brown 14.6  19  PHI
5      Kris Dunn 16.4  21  PHI
6    Buddy Hield 25.0  22  PHI

我正在尝试使用mlogit包。我首先使用mlogit.data重新格式化数据。

代码语言:javascript
复制
Choices <- mlogit.data(test,
     choice="picked",
     shape="long",
     id.var="Team",
     alt.var="Player",
     chid.var="Team",
     varying=c(4:5))

结果如下:

代码语言:javascript
复制
                    picked Pick       Player  PPG  Age Team
PHI.Ben Simmons      TRUE    1    Ben Simmons 19.2  19  PHI
PHI.Brandon Ingram  FALSE    2 Brandon Ingram 17.3  18  PHI
PHI.Jaylen Brown    FALSE    3   Jaylen Brown 14.6  19  PHI
PHI.Kris Dunn       FALSE    5      Kris Dunn 16.4  21  PHI
PHI.Buddy Hield     FALSE    6    Buddy Hield 25.0  22  PHI
LAL.Brandon Ingram   TRUE    2 Brandon Ingram 17.3  18  LAL
LAL.Jaylen Brown    FALSE    3   Jaylen Brown 14.6  19  LAL
LAL.Kris Dunn       FALSE    5      Kris Dunn 16.4  21  LAL
LAL.Buddy Hield     FALSE    6    Buddy Hield 25.0  22  LAL
BOS.Jaylen Brown     TRUE    3   Jaylen Brown 14.6  19  BOS
BOS.Kris Dunn       FALSE    5      Kris Dunn 16.4  21  BOS
BOS.Buddy Hield     FALSE    6    Buddy Hield 25.0  22  BOS
MIN.Kris Dunn        TRUE    5      Kris Dunn 16.4  21  MIN
MIN.Buddy Hield     FALSE    6    Buddy Hield 25.0  22  MIN
NOP.Buddy Hield      TRUE    6    Buddy Hield 25.0  22  NOP

显然,我有更多的球员和变量,但这是基本的结构。

然后,我尝试运行一个条件logit回归:

代码语言:javascript
复制
mlogit(Choices,picked ~ <regvar>,data=Choices)

我多次遇到以下错误:

代码语言:javascript
复制
Error in solve.default(H, g[!fixed]) : 
  system is computationally singular: reciprocal condition number = 3.72907e-23

我在其他地方看到的解决方案,建议通过删除高度相关的变量来消除非可逆性。,但是,这似乎解决不了我的问题。这个问题仍然存在,有着不同的确切数字,甚至在简单的双变量模型中,比如低相关性的示例数据(显然,有不同的数字)。事实上,它甚至发生在一个回归者!

我想要做的事情的简化版本:

代码语言:javascript
复制
model<-mlogit(
  picked~PPG+Age,
  data=Choices)

也许这只是一个容忍问题,但考虑到这些变量之间没有特别的关联,这将是令人惊讶的。这似乎是,比变量相关性更微妙的事情是错的。我也查过了,还有提供单独的/可选的特定变量。例如,添加一个特定于团队的变量(如"Team_MSA_Size“)不会改变任何事情:

代码语言:javascript
复制
model<-mlogit(
  picked~PPG+Age|Team_MSA_Size,
  data=Choices)

是否有关于我的数据结构的什么原因,或者没有正确使用mlogit语法导致这一点?我该怎么修理它呢?

我确实找到了这个相似的话题,但是在没有相关数据的情况下,跟踪它确实有困难。这一公认的答案是否意味着每一种选择都必须有相同的选择?如果是这样的话,那对我来说将是非常不幸的,因为显然每支球队都会因为球员的选择而看到不同的名单。如果这就是问题所在,这里有一个简单的解决方法吗?还是把它放在你自己的代码评估领域?

如果有帮助的话,我可以很高兴地提供更多的数据或其他细节。

编辑:有人要求提供玩具数据。这是一个带有玩具数据的csv,下面是产生错误的代码.

代码语言:javascript
复制
setwd("Filepath")
library(mlogit)
toy_data <- read.csv("toy_data.csv",header = TRUE)
Choices_test<- mlogit.data(toy_data,
                       choice="picked",
                       shape="long",
                       id.var="Team",
                       alt.var="Pick",
                       chid.var="Team")
mlogit(picked~as.factor(Position)+as.factor(Black)+Age+PPG+APG+RPG+Team_WS,
     data=Choices_test)


Error in solve.default(H, g[!fixed]) : 
  system is computationally singular: reciprocal condition number = 6.53305e-21
EN

回答 1

Stack Overflow用户

发布于 2017-08-15 02:32:56

如果我使用mlogit pkg的函数进行了条件logistic回归,并根据我的理解对您的变量进行了调整:

代码语言:javascript
复制
 Choices <- mlogit.data(data=test, choice="picked",
          chid.var="team",alt.var="pick",shape="long")

你的alt.var是“挑选”,它需要排序,唯一,没有联系,所以在你的情况下,它看起来像1:6。

除非我误解了你的问题!

如果您创建一个小型玩具数据集,以便可以测试代码,那么它将有所帮助。

又是嗨,

是您的语法:

代码语言:javascript
复制
mlogit(picked~as.factor(Position)+as.factor(Black)+Age+PPG+APG+RPG+Team_WS,
     data=Choices_test)

从mlogit pkg来看,我已经有一段时间没有看过了,但它不像我用于条件逻辑回归的语法。

在我的经验中,计算奇异性误差msg与高度相关/相同的变量有关。

如果您确定有很少的共线性,那么我的猜测是您的模型语法设置不正确。

PS:您的代码抛出:

代码语言:javascript
复制
In file(file, "rt") :
  cannot open file 'toy_data.csv': No such file or directory

我认为您需要用几行数据填充“toy_data.csv”。如果您的数据是敏感的,那么只需发明一些(足以说明问题)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45667319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档