r - 如何在R语言中用 'y'替换多项式中的x?

标签 r polynomials

if(!require('PolynomF')) {
    install.packages('PolynomF')
    library('PolynomF')
    }

(q <- polynom(c(0,2,2)))

例如,这里它将打印 x,但我希望它打印 y,例如 2y + 2y^2

最佳答案

这里有两种方法。 (我已将 p 替换为 q,因为 q 是基函数的名称。)

  • 第一个将所有 "x" 替换为 "y"
  • 第二个调用“polynom”类对象的打印方法
library(PolynomF)

(p <- polynom(c(0,2,2)))
#> 2*x + 2*x^2

gsub("x", "y", p)
#> [1] "2*y + 2*y^2"

print(p, variable = "y")
#> 2*y + 2*y^2

创建于 2023 年 2 月 12 日 reprex v2.0.2

但是,函数polynom 返回一个函数,gsub 返回一个字符串。应首选第二种方式,以避免错误或混淆,修改对象 p 或创建另一个对象(下面的 p2)是没有意义的。

p2 <- gsub("x", "y", p)

p(0:4)
#> [1]  0  4 12 24 40
p2(0:4)
#> Error in p2(0:4): could not find function "p2"

创建于 2023 年 2 月 12 日 reprex v2.0.2

关于r - 如何在R语言中用 'y'替换多项式中的x?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75425051/

相关文章:

r - 在ggplot中使用geom_bar()显示频率而不是计数

java - 在 Java 中分解多项式字符串

python - 将有限洛朗级数(洛朗多项式)表示为字典

c++ - 使用 istringstream c++ 提取多项式的系数

recurrence - 在 Maxima 中,如何表达 Hermite 多项式的递推式?

c++ - R:使用内联包时的 C++ 优化标志

r - match.call() 返回一个函数或一个符号,但符号不能被 do.call() 使用

r - 在 Roxygen 中记录时 : How do I make an itemized list in @details?

r - 如何通过 purrr::pmap 将参数从 tibble 正确传递到函数中

R:多元正交回归,无需显式编写变量名称