小编jd8*_*585的帖子

解析R:Quantmod应用程序中的引号

我正在尝试创建在从雅虎获取符号后提供历史波动的函数.但是,当我将输出传递给波动率函数时,它不喜欢它; Get变量被赋予一个带引号的向量,例如"SPY",但波动率函数只需要没有引号(SPY没有"SPY").我尝试使用noquote()取消引号,现在出现以下错误:

log(x)中的错误:数学函数的非数字参数

我的代码

require(quantmod)

vClose = function(X){
Get <- getSymbols(X, from="2000-01-01", src="yahoo")
Set <- noquote(Get)
volatility(Set, calc="close")
}
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒.

quotes r volatility quantmod

5
推荐指数
1
解决办法
699
查看次数

R中的lpSolve中的绝对值约束

我想进一步利用以下附加约束来约束下面的系统,该约束使用了绝对值运算符:

abs(x1)+abs(x2)+abs(x3) <= 10
Run Code Online (Sandbox Code Playgroud)

有可行的方法在R中实现这些附加的绝对值约束吗?

方程组:

maximize: x1 + 9x2 + x3;

subject to:

x1 + 2x2 + 3x3 <= 9

3x1 + 2x2 + 2x3 <= 15
Run Code Online (Sandbox Code Playgroud)

R代码:

require(lpSolve)
# objective function, constants, constraints
obj = c(1,9,1)
con = matrix(c(1,2,3,3,2,2), nrow=2, byrow=TRUE)
rel = c("<=", "<=")
rhs = c(9,15)
Run Code Online (Sandbox Code Playgroud)

解:

my.lp = lp("max", obj, con, rel, rhs)
my.lp$objval
my.lp$solution
Run Code Online (Sandbox Code Playgroud)

显然,这是一个简单的示例,用于说明我在线搜索后遇到的问题。这似乎存在一种方法lp_solve本身,就证明这里的在lp_solve在线帮助指导。但是,如果可能的话,我希望将问题保留在R中。

r linear-programming absolute-value lpsolve

2
推荐指数
1
解决办法
3559
查看次数

按功能按日期排序数据框列

我有以下数据框,

ESIVmatrix <- structure(c(1000, 1050, 1100, 1150, 1200, 1250, 0.596044633067339, 
0.568874415146119, 0.548817842630467, 0.528509198265979, 0.505102479305053, 
0.481863859161313, 0.419829588814411, 0.407383853187116, 0.395662104352744, 
0.383710399971056, 0.371402827197033, 0.358943850461579, 0.390669388091009, 
0.380556007177402, 0.369862565005378, 0.358004628064117, 0.347655431619544, 
0.33661166544938, 0.474661141683071, 0.457000912081753, 0.444006689151462, 
0.429723103151982, 0.415839741238857, 0.400624512403368), .Dim = c(6L, 
5L), .Dimnames = list(NULL, c("Strikes", "20150417", "20150918", 
"20151218", "20150619")))
Run Code Online (Sandbox Code Playgroud)

但是,列的顺序不是按日期顺序排列的.我希望它们符合日期顺序(20150417,20150619,20150918,20151218).

我已经尝试使用order(),并arrange()无济于事.任何帮助非常感谢.

r dataframe

0
推荐指数
1
解决办法
42
查看次数