这是我的载体。请注意,向量m
由未知值x
组成。
r=c(1, 3, 5)
p=c(5, 3, 1)
s=c(1, 3, 5)
m=c(x, x, x)
如何在R中解决以下条件向量方程?
我想找到x的值,它使p*(s-m)*(ifelse((s-m)<0, r, 6-r))
向量中的元素总和为零。
sum(p*(s-m)*(ifelse((s-m)<0, r, 6-r)))=0
我被告知rSymPy
可能会处理这个问题,但我认为这不适用于矢量方程式。有什么想法或建议吗?
事实上,我能够使用&#34;目标搜索&#34;在Excel中得到答案。但是想得到R命令来解决这个问题。
答案 0 :(得分:0)
Excel进行数值计算,而不是符号,因此我们假设数字解决方案确实是您想要的。在这种情况下,它可以像这样以数字方式解决:
f <- function(x) sum(p*(s-x)*(ifelse((s-x)<0, r, 6-r)))^2
optimize(f, range(s))
,并提供:
$minimum
[1] 2.4667
$objective
[1] 3.1554e-30