首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试获取子集但显示错误:(列表)对象不能被强制键入'double‘

尝试获取子集但显示错误:(列表)对象不能被强制键入'double‘
EN

Stack Overflow用户
提问于 2015-09-19 05:58:34
回答 1查看 727关注 0票数 1

我试图找到子集,但它显示的错误如下:

我正在用R中的标杆软件包进行数据包络分析,虽然我以前看到过类似的问题,但这并没有帮助我。

更新:数据库的结构和摘要

我正在为V6和V7执行数据包络分析。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-19 06:25:58

我想你需要

代码语言:javascript
复制
Large.Cap$V1[e_crs$eff > 0.85]

使用来自?dea的可复制示例

代码语言:javascript
复制
library(Benchmarking)
x <- matrix(c(100,200,300,500,100,200,600),ncol=1)
y <- matrix(c(75,100,300,400,25,50,400),ncol=1)
Large.Cap <- data.frame(v1= LETTERS[1:7], v2= 1:7)
e_crs <- dea(x, y, RTS='crs', ORIENTATION='in')
e_crs
#[1] 0.7500 0.5000 1.0000 0.8000 0.2500 0.2500 0.6667

e_crs对象是一个list

代码语言:javascript
复制
str(e_crs)
#List of 12
# $ eff        : num [1:7] 0.75 0.5 1 0.8 0.25 ...
# $ lambda     : num [1:7, 1:7] 0 0 0 0 0 0 0 0 0 0 ...
#  ..- attr(*, "dimnames")=List of 2
#  .. ..$ : NULL
#  .. ..$ : chr [1:7] "L1" "L2" "L3" "L4" ...
# $ objval     : num [1:7] 0.75 0.5 1 0.8 0.25 ...
# $ RTS        : chr "crs"
# $ primal     : NULL
# $ dual       : NULL
# $ ux         : NULL
# $ vy         : NULL
# $ gamma      :function (x)  
# $ ORIENTATION: chr "in"
# $ TRANSPOSE  : logi FALSE
# $ param      : NULL
# - attr(*, "class")= chr "Farrell"

我们从'e_crs‘中提取'eff’e_crs元素到subset 'Large.Cap‘数据集中的'v1’列。

代码语言:javascript
复制
droplevels(Large.Cap$v1[e_crs$eff > 0.85])
#[1] C
#Levels: C
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32664804

复制
相关文章

相似问题

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