问题标签 [piecewise]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1015 浏览

r - 如何使用 R 求解具有分段常数目标函数的程序?

我想使用具有分段常数目标函数的 R 来解决最小化问题。这个想法是,对于我的(整数)决策变量x的较低值,会产生比较高值更高的惩罚成本。考虑到一些限制,我想尽量减少总罚款成本。

所以,我的程序如下所示:

我在编程分段常数目标函数P(x)时遇到问题,其中P(x)是向量x的所有元素的总和。我知道它不能与库中的函数结合lp()使用linprog。但是,如果不指定大量额外的变量,我无法找到一种方法。此外,广泛的互联网搜索并没有提供任何有用的想法。

让我举一个例子来说明这个函数P的样子

这应该按以下方式阅读:如果x1=2,则会产生 11 的惩罚成本。如果x6=4,则会产生 13 的惩罚成本。也就是说,对于x=c(2, ..., 4),我们有 ,P=c(11, ..., 13)总惩罚成本(目标值)是sum(11, ..., 13)

我的矩阵A(它完全是单模的)和向量b如下所示。

A <- matrix(c(1,0,1,0,0,1,1,0,0,1,0,0,0,1,0,1,1,0,0,1,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,1),nrow=6) b <- c(4,5,1,5,2,4).

所以,我的问题是:

如何使用 R 找到分段常数目标函数的最小值?

0 投票
2 回答
1981 浏览

python - python - 如何在Python中对具有正斜率和负斜率的线应用分段线性拟合?

我在代码中提供了具有负斜率和正斜率的数据,如图所示:

在此处输入图像描述

使用这篇文章中应用的代码拟合由两种不同状态组成的数据的曲线,我创建了这个代码。它适用于相同的斜率,无论是正的还是负的,但是当一个是正的,另一个是负的时,它不能正确地拟合线条。

输出

对于不同的坡度: 在此处输入图像描述

对于相同的斜率都是负的(也适用于正斜率):

在此处输入图像描述

我有两个问题:

  1. 如何在 Python 中对此类情况应用分段线性拟合?
  2. 如何将其扩展到三个或更多政权?
0 投票
2 回答
1806 浏览

r - 在断点处连接一条直线和一条水平线的分段回归

我想用一个断点进行分段线性回归,其中回归线的第二半有slope = 0. 有如何进行分段线性回归的示例,例如这里。我遇到的问题是我不清楚如何将模型的一半的斜率固定为 0。

我试过了

哪里k是断点,但右边的段不是平坦/水平的。

我想将第二段的斜率限制为 0。我试过:

但同样,我不确定如何让下半场的斜率为零。

任何帮助是极大的赞赏。


我自己的解决方案

感谢下面的评论,我有一个解决方案。这是我用来优化然后绘制拟合的代码:

我的解决方案

0 投票
2 回答
685 浏览

matlab - 在 MATLAB 中添加分段多项式

我需要添加从多个数据集派生的分段多项式。有没有一种简单的方法可以在不插值的情况下将分段多项式相加?换句话说,给定 PP1 和 PP2,有没有办法生成 PP3(其中 PP3 保持分段多项式形式)?例如..

但不是tnew明确指定,我想要一个pp3有效的新分段多项式pp1+ pp2

示例问题的输出

0 投票
2 回答
1629 浏览

python - Python/Scipy 中的分段常数或 0 度样条插值

尽管 scipy 的文档表明scipy.interpolate.UnivariateSpline将以 k<=5 的顺序运行,但实际上,对于 >=1 的顺序还有一个额外的约束。有谁知道用 Numpy/Scipy 实现 0 度样条或分段常数插值的方法?

0 投票
0 回答
508 浏览

r - 使用二元自变量作为R中的断点进行分段回归

第一次尝试在 R 中使用“分段”包并有一些(可能是愚蠢的)问题。

我正在R中实现分段回归,我想做的是这样的:

我希望做一个两段分段回归,其中我可以使用变量 x3,一个二进制变量,将模型分成两段——一个段 x3=0,另一个段 x3=1。

考虑到这一点,我因此使用 0.5 作为我的估计断点。但是,我收到这样的错误消息:

两个问题:

  1. 鉴于我打算做什么,代码有意义吗?
  2. 错误的可能原因是什么,我该如何解决?

提前致谢!

0 投票
0 回答
1783 浏览

r - R分段回归预测错误:“数据”必须是向量类型,为“空”

我正在使用分段包来构建具有大量预测变量的 arima 回归模型。但是模型预测步骤总是给我这个错误:

我的代码如下。Y_c 是预测变量。X_c 是一个大的预测变量矩阵,而 X_v 本质上是相同的矩阵,但处于验证期。X_c 中的预测变量之一是 TP,它有两个断点。因为我不想附加数据,所以我使用了一个孤立的变量,估计似乎还可以。

但是最后一步给我带来了错误。

我无法找出我对实际数据做错了什么。使用虚拟数据进行测试很好。

这真是令人沮丧。如果有人可以提供一些帮助,将不胜感激!

0 投票
1 回答
1652 浏览

r - R中的分段线性插值

我知道您可以使用 approx 函数进行线性插值。但是,我在任何地方都找不到如何对这对点进行分段线性插值。例如,假设 x<-c(1,4,3,2) y<-c(4,3,2,1)

有人可以给我答案吗?非常感谢提前

0 投票
2 回答
134 浏览

python - 分段功能不起作用

我定义了一个这样的分段函数:

但它总是返回我 0

0 投票
1 回答
1227 浏览

r - 在分段包中使用 davies.test 需要帮助

很抱歉问了这么愚蠢的问题,但我真的很困惑!我有一个带有一个断点的分段线性回归,现在我想测试davies.test包中斜率的显着差异segmented

现在哪一个对戴维斯测试是正确的?

或者