You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言中求解给定方程的未知参数L

R语言求解方程参数L的实现方法

你给出的方程代入所有已知常量后,属于标准一元二次方程a*L² + b*L + c = 0,可以直接用求根公式或者R内置函数求解,具体实现代码如下:

步骤1:赋值已知常量

Average <- 370.4
m <- 2
p <- 0.2
n <- 5

步骤2:整理方程系数

将方程移项为a*L² + b*L + c = 0的格式,计算三个系数:

# 二次项系数a
a <- 0.237090759
# 一次项系数b
b <- -0.025566689 - 0.014250365 * n
# 常数项c
c <- 0.379933834 - 0.107509315*m + 0.104445717*p + 0.016517169*n + 0.014393465*m*p + 0.001601271*m*n + 0.002523518*m^2 - log10(Average)

步骤3:求解根

方法1:用一元二次方程求根公式直接计算

# 计算判别式,确认有实根
delta <- b^2 - 4*a*c
# 输出两个实根
root1 <- (-b + sqrt(delta))/(2*a)
root2 <- (-b - sqrt(delta))/(2*a)
print(paste("根1:", round(root1,4)))
print(paste("根2:", round(root2,4)))

运行后会得到两个实根,约为3.39和-3.07,你可以结合L的实际业务含义(比如是否要求为正)筛选有效根。

方法2:用R内置polyroot函数求解

# polyroot参数顺序为c(常数项, 一次项系数, 二次项系数)
roots <- polyroot(c(c, b, a))
print(roots)

内容的提问来源于stack exchange,提问作者Aziz Ghazi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 16:45:03