【发布时间】:2017-03-31 10:39:31
【问题描述】:
我正在读取包含两列数字数据的文件。让第一列为“x”,第二列为“y”。
“x”中的数据不是均匀分布的。也就是说,它是这样的:
2.4 2.6 2.7 3.0 3.2 3.5 ...
数据显然是有限的。它有一个初始值和一个最终值。
我需要在这些数据中找到“不连续性”。我想通过区分数据来做到这一点:dy/dx
我已经搜索过了,但是我找到的所有微分答案都涉及分析函数,例如 y=x**2+1
我的数据是离散的,不适合分析函数。我需要在这个数据上找到每个“x”值的导数,记住“x”不是均匀分布的。
所以,假设我已从数据文件中读取数据,并将它们存储在变量“x”和“y”中。
现在我想要 dy/dx,我想要绘制 dy/dx vs x。
我可以“导入”什么来做这个衍生品?还是我必须自己编写算法?
【问题讨论】:
-
首先,到目前为止您尝试了什么?请发布您的代码。这实际上取决于您所说的不连续性是什么意思。你是怎么定义的?您是否只想通过肉眼确定情节中是否存在导数跳跃?
-
我什么都没试过,因为我在 SciPy 和其他包中找到的所有微分例程都需要统一的步长 = h。正如我最初所说,我的步长不统一。我只需要一些东西来区分日期。 “为什么”并不重要。
-
您需要定义什么是不连续性。然后您可以考虑如何进行检查 - 最有可能使用不太难的手写代码。
-
这不重要。我只想做导数。