如何最大化-log(x)曲线下的面积?

时间:2017-05-15 10:58:30

标签: python r python-2.7 equation logarithm

我正在尝试获取曲线下面积为x的{​​{1}}和y坐标:y=-15.7log(x)+154.94。我想用R或Python来计算它。有人可以帮我找一下吗?

背景:我有销售(y)与价格(x)的数据点。我尝试在R中拟合一条对数曲线:lm(formula = y ~ log(x))给出了上面的等式。我正在努力增加销售和价格产品的收入。因此,曲线下的矩形区域应该最大化。

2 个答案:

答案 0 :(得分:1)

R解决方案

# objective function should be minimized
NegArea <- function (x) x * (15.7 * log(x) - 154.94)
# sketch this function: there is a minimum
curve(NegArea, from = 0, to = 10000)
# use optimize()
optimize(NegArea, c(4000, 8000))

分析解决方案

一阶导数是:

15.7 + 15.7 * log(x) - 154.94

将其设置为零并解决它:

x = 7106.675

这与R结果一致。

答案 1 :(得分:0)

这不是一个编程问题,而是一个数学问题,如果我在你的问题中得到了正确的函数,那么答案就是#34;无论图形在哪里都能触及x轴&#34;。
但我认为这不是你想要的。也许你想要O(0,0)和P(x,y)之间的矩形?
比你仍然应该简单地使用cas和a级数学: A = x*(-15.7log(x)+154.94)