小编use*_*318的帖子

elif代码块出错

我正在努力理解下面的代码块中的以下错误:

if o == None or t == None:
 try:
elif o == 1 and t == 1:
  c1 = c1 + 1
elif o == -1 and t == -1:
  c2 = c2 + 1
elif o == -1 and t == 1:
  i1 = i1 + 1                
elif o == 1 and t == -1:
  i2 = i2 + 1
 return (c1, i1, c2, i2)
Run Code Online (Sandbox Code Playgroud)

错误:

elif o == 1 and t == 1:
   ^
Syntax error : …
Run Code Online (Sandbox Code Playgroud)

python

3
推荐指数
1
解决办法
174
查看次数

将上三角矩阵转换为 R 中的对称矩阵

我有一个 20 行的数据框,其中每行是一个 10 x 10 上三角协方差矩阵,对角线,我想将其转换为对称的 10X10 矩阵。我一直在关注这篇文章:在 R 中逐行到上三角矩阵的向量 但是当我这样做时,它给了我一个列表而不是矩阵。

此外,我想对每一行递归地执行此操作,并将生成的 20 个矩阵存储在列表中。对于可重现的示例,这里是一个包含 20 行的数据框。每行是对角线的 3x3 上三角矩阵。

g <- data.frame(a=runif(20),b=runif(20),c=runif(20),d=runif(20),e=runif(20),f=runif(20))
g1<-c(g[1,])
g2= matrix(0, 3, 3)
g2[upper.tri(g2, diag=TRUE)]=g1
g2
# list of 9 elements instead of matrix
#[[1]]
 # [1] 0.2625916

 # [[2]]
 # [1] 0

 # [[3]]
 # [1] 0

 # [[4]]
 # [1] 0.6255627

 # [[5]]
 # [1] 0.829801

 # [[6]]
 # [1] 0

 # [[7]]
 # [1] 0.3386346

 # [[8]]
  #[1] 0.9517039

 # [[9]]
 # …
Run Code Online (Sandbox Code Playgroud)

r matrix

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

标签 统计

matrix ×1

python ×1

r ×1