r - R:在 matlib 中使用 Solve 求解方程组,其中 #unknowns > # eqns
问题描述
library(matlib)
A <- matrix(c(1, 1/7, 1, 2/7, 1, 3/7, 1, 4/7, 1, 5/7, 1, 6/7), 2, 6)
b <- c(1,0.4)
showEqn(A, b)
我正在尝试使用该matlib
函数来帮助我找到 $x_1, ..., x_6$ 的值,以使它们满足上述等式。我知道 $x_1, ..., x_6$ 有许多不同的组合,因此可以满足上述 2 个方程。我怎样才能找到 $x_1, ...., x_6$ 的值?我尝试使用Solve(A, b, fractions = TRUE)
,但这并没有给我一套可能的解决方案。
解决方案
如果未知数大于您拥有的方程数,则解的数量是无限的。实际上,如果差为 1,则解为直线,如果差为 2,则解为平面,依此类推。
一般来说,如果变量数为 N,方程数为 M(我们可以假设方程是线性独立的),则解将是嵌入 N 维空间中的 NM 维形状。
因此,通过求解 N 大于 M 的系统,您将获得一个描述某些 x_i 之间关系的方程,例如一条线的方程。R 主要设计用于处理数字和执行算术而不是处理符号数学,它可能不是最适合此目的的软件。但是,如果您想继续使用 R,有一些库可以提供这种可能性,例如,请参阅这篇文章。
推荐阅读
- c# - 编译 Microsoft 的 C# SHA 256 代码示例的问题
- azure - 在 Azure DevOps Release Pipeline Artifacts 中,Github 企业服务连接不可用
- python - 找不到使用 jwcrypto 在 python 中解密 JWE 令牌(但在 ASP.Net 中创建)的方法
- c# - AspNetCore.Identity UserManager CreateAsync 无法保存关系
- c# - 使用 xamarin 表单中的数据绑定在类和页面之间传递值
- html - 通过从前端单击按钮重新启动节点 js 服务器
- node.js - 为什么节点 js 中的云功能没有正确部署
- ruby-on-rails - Factorybot - 如何设置嵌套属性
- c# - 如何在 LINQ 中对未指定的数字使用多个 OrderBy?
- git - 忽略的文件显示为未跟踪