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/