r - 如何在 R 中更有效地计算积分?
问题描述
我在 R 中有一个需要将近 1 秒才能运行的函数。所以我认为这不是什么沉重的事情。它看起来像这样:
DataList <- cons1mpdf(tradedays[i])
tempQ <- DataList[[1]]
Qpdf <- function(X) pmax(tempQ(X),0)
norINTEG <- function(X) Qpdf(X) / X^(-RRA)
然后我想从这个函数中取一个积分并将结果用于这样的混合问题:
a <- integral( norINTEG , DataList[[2]] , DataList[[3]] )
realPDF <- function(X) norINTEG(X) / a
zBerkowitz[i] <- qnorm( pmax( 0, integral(realPDF , DataList[[2]] , head(nextmonth.close[date == tradedays[i]] , 1) ) ) )
但是大于 3的计算a
需要将近 1 分钟。所有这些代码都在循环中,这个积分导致我的循环运行很长时间。问题变得更糟,因为我想使用这个结果来解决需要几天才能运行的最大化问题。这是我要解决的问题的一部分:RRA
for
你觉得我哪里做错了?我该如何改进它?
解决方案
推荐阅读
- swift - Swift Codable:使用父键作为值
- node.js - Angular 7:使用 npm 链接添加本地模块
- java - 用 Java 重新创建扫描仪
- php - 如何通过设置的日期和时间自动将电子邮件发送到 PHP 中的多个用户电子邮件
- python - matplotlib:在图形之外添加注释
- ios - Xcode 11 - 没有 iOS 13.1.2 模拟器(只有 13.0)
- arrays - 基于具有组 ID 的向量创建指标矩阵
- request - 有没有办法在 Spring Boot 中将媒体文件作为请求的一部分发送?
- azure - 将 Azure 资源从一个资源组移动到另一个资源组
- c# - 如何确定字符串是否包含此 SpriteFont 无法解析的字符?