是否存在 code/function 可以求解 X 或 Y 的方程式?

Is there a code/function that solves an equation for either X or Y?

我有一个简单的二次方程,但我需要找到一种方法让 R 根据我输入的值来求解 X 或 Y。比如我的等式是

y = 232352x^2+2468776x+381622

我需要找到当 x = 8000 时求解 y 和当 y = 4000 时求解 x 的代码。R 中是否存在这样的 code/function 还是我必须手动执行?

第一部分(当 x=8000 时求解 y)非常简单。

您只需输入:

232352 * 8000^2 + 2468776 * 8000 + 381622

并且 R 给出:

[1] 1.489028e+13

第二个问题涉及根。 polyroot() 函数就是您所追求的。它将方程的系数作为向量,returns 根。所以对于你的情况:

 polyroot(c(381622-4000,2468776,232352))

给出:

 [1]  -0.155227+0i -10.469928-0i

然后由您决定您想要哪种解决方案。

请记住,一般来说,如果您想针对特定的 y 值求解 y = Ax^2 + Bx + C,则必须将方程重新排列为 Ax^2 + Bx + (C-y) = 0。 翻译成 R 代码是:

coeff <- c(C-y,B,A)
polyroot(coeff)

将 A、B、C、y 替换为相关数字。