【发布时间】:2014-09-25 22:11:13
【问题描述】:
我经常使用 Python(偶尔使用 Excel)来处理和比较多个实验之间的测试数据。在某些情况下,数据可能不同步,这使得直接比较变得困难。例如,典型的测试规范是:
1) Stabilize test temperature to a value of 20 +/- 2 degrees C
2) Hold test temperature at stabilized value for 15-25 seconds
3) Increase temperature by 20 degrees C at a rate of 0.5 degree C/second
标准化数据很简单,因此它们在时间 = 0 秒时都以 20 C 的标称温度值开始,但我真正想要的是同步数据,以便温度斜坡同时开始。
我尝试了简单的算法来检查数据的斜率,以确定温度何时开始升高,但由于仪器测量的局部波动导致斜率实际上并不能反映温度的整体变化率。
Numpy、Scipy、Pandas 等中是否有可以过滤掉这些局部波动并识别温度何时真正开始升高的功能。
我偶尔会在 Excel 中工作,因此如果有更方便的方法在电子表格中执行此操作,我可以使用 Excel 来处理数据。
任何建议将不胜感激。
【问题讨论】:
-
几个想法:(1)过滤你的数据,用 G. 内核卷积可能就足够了,但要使用内核大小。 (2) 尝试对您的数据进行线性回归;回归的偏移开始,斜率恒定的偏移是斜坡的开始。
-
我不确定我是否理解 (2)。然而,我已经尝试过线性回归,因为在达到最高温度后有 20-30 秒的保持时间,回归线的斜率似乎没有意义。您建议的方法是否假设在达到 20 度增加后停止测试?
-
如果您只使用零件数据进行 15-20 秒的回归分析,那么在“将测试温度保持在稳定值 15-25 秒”的数据处,斜率将为零。然后它增加。当它达到您的实际斜率 0.5 C/秒时,回归数据中没有保留的尾巴....可能是我不明白您的问题。你能分享一个例子吗?
-
数据的噪音有多大?你能发布一个典型的样本吗?
标签: python excel numpy pandas scipy