在r中使用矩阵

时间:2015-10-08 20:03:58

标签: r matrix

我正在研究构建期权定价矩阵的代码。我现在所拥有的是矩阵对角线部分的值。目前我正在使用4行4列的矩阵。我试图做的是使用矩阵对角线部分的值来给出矩阵下三角形的值。因此,对于我的矩阵java.lang.NullPointerException at com.sun.deploy.net.proxy.DynamicProxyManager.getProxyList(Unknown Source) at com.sun.deploy.net.proxy.DeployProxySelector.select(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) at com.arcologydesigns.Main.main(Main.java:44) Exception in thread "main" java.lang.NullPointerException at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) at com.arcologydesigns.Main.main(Main.java:44) Omat将为Omat[1,1]+Omat[2,2]提供值,[2,1]将为Omat[2,2]+Omat[3,3]提供值。[3,2]然后,使用这些创建的值,Omat[2,1]+Omat[3,2]将为[3,1]提供值。

我的尝试:

Omat = diag(2, 4, 4)
Omat[j+i,j] <- Omat[i-1,j]+Omat[i,j+1]

关于如何做到这一点的任何想法?

我现在拥有的是一个4行乘4列矩阵:

Omat
# 2   0   0   0
# 0   2   0   0
# 0   0   2   0
# 0   0   0   2 

我一直在尝试创建一个4行乘4列矩阵:

 0 0 0 0
 4 0 0 0
 8 4 0 0
16 8 4 0

1 个答案:

答案 0 :(得分:0)

您可以尝试计算主对角线下方的连续对角线。代码可能如下所示:

Omat = diag(2,4)
for(i in 1:(nrow(Omat)-1)) {
  for( j in (i+1):nrow(Omat)) {
    Omat[j,j-i] <- Omat[j,j-i+1] + Omat[j-1,j-i]
  }
}
diag(Omat) <- 0