r - 使用函数代码产生一个×n矩阵
问题描述
为了生成图中的矩阵,我尝试编写一个函数代码来执行此操作,但我不知道下一步该做什么,也不确定我已经做的是否正确。
Matrix <- function(n){
mat1 <- diag(x = ((1:n)-1)/((1:n)+1), n, n)[-1,]
mat2 <- diag(x = ((1:n)-(1:n)+1)/((1:n)+1), n, n)[,-1]
mat3 <- diag(x = 1/((1:n)+1), n, n)
}
解决方案
一个选项:
library(SoDA)
n <- 4
triDiag(diagonal = rep(1/(n+1), n+1),
upper = (n:1)/(n+1),
lower = (1:n)/(n+1))
# [,1] [,2] [,3] [,4] [,5]
# [1,] 0.2 0.8 0.0 0.0 0.0
# [2,] 0.2 0.2 0.6 0.0 0.0
# [3,] 0.0 0.4 0.2 0.4 0.0
# [4,] 0.0 0.0 0.6 0.2 0.2
# [5,] 0.0 0.0 0.0 0.8 0.2
推荐阅读
- python - Python Django - 包含的 URLconf '
我正在阅读 Eric Matthes 编写的 Python Crash Course 中的第 18 章,这是一个关于如何使用 Django 创建 Web 应用程序的教程。目前我
- python - Fatal error reading PNG image file: Not a PNG file in Ubuntu 20.04 LTS
- node.js - nodejs webapp 在本地工作,但不是实时/部署
- angular - 引导选择 - nativeElement.selectpicker 不是函数 - Angular 9
- python - QTreeview 迭代节点
- nmap - Shodan 显示开放端口,但 nmap 表示它们已关闭。知道为什么吗?
- python - 从 python 2 到 python 3 的 create_string_buffer 和 string.join 错误
- html - Flex grow works on the element itself but not on the container
- laravel - Laravel 5 | Migration Alter-Change Column took so long
- xcode - Downloading iPhone 4s Simulator on Xcode 11