从R中的单纯形优化得到目标向量

时间:2017-06-29 11:30:05

标签: r object vector simplex-algorithm

我开始使用R来解决LP问题,使用库中的单工函数(" boot")。当我尝试以下代码时,我只将目标矢量作为字符串而不是矢量。

$soln
x1   x2   x3   x4 
0.0  0.0 13.8  0.0 

从此获取后续输出

x[1]

但是,这不是矢量对象,因此我无法使用{{1}}获取第一个维度的元素。你能帮我把结果作为载体吗?

1 个答案:

答案 0 :(得分:2)

您的变量xx是一个列表,因此很容易在其中返回特定值。

例如,如果你想要x1,你可以这样做:

xx[["soln"]]["x1"]xx[[1]][1]

但是如果你想将xx变换为矢量,你可以这样做:

xx2 <- unlist(xx)

然后你有一个矢量:

> xx2
soln.x1 soln.x2 soln.x3 soln.x4 
    0.0     0.0    13.8     0.0 

> is.vector(xx2)
[1] TRUE

如果您不想保留向量中每个元素的名称,请将arg use.names放到FALSE

> xx2 <- unlist(xx, use.names = FALSE)
> xx2
[1]  0.0  0.0 13.8  0.0

> is.vector(xx2)
[1] TRUE