> P=makeFun(7.5*(4.1-0.5*cos(x))/(0.5*sin(x))~x)
> D(P(x)~x)
Error in cos(x) : non-numeric argument to mathematical function
我一直试图创建一个功能,但它给了我一个错误。我已经尝试过这个功能的一堆东西,但它们都没有用。我可以将一个数字插入P中,但我无法将其作为衍生物。我做错了什么?
答案 0 :(得分:1)
嗯,这很有趣。首先我发现包名是mosaic
,而不是马赛克。加载它并查看?D页面后,我没有收到任何错误:
install.packages("mosaic", dependencies=TRUE)
load(mosaic)
P=makeFun(7.5*(4.1-0.5*cos(x))/(0.5*sin(x))~x)
D(P(x)~x)
#--------
function (x)
7.5 * (0.5 * sin((x)))/(0.5 * sin((x))) - 7.5 * (4.1 - 0.5 *
cos((x))) * (0.5 * cos((x)))/(0.5 * sin((x)))^2
您现在应该尝试通过首先确定包的所有依赖项是否可用来调试问题。我的工作区中也没有名为“x”的对象,所以你可能会执行`rm(x)并尝试重新运行,因为看起来评估者发现它不喜欢的“x”。 (但我无法通过为'x'指定字符值来创建该错误。)我在运行3.1.0补丁的Mac上。