了解 numpy.gradient
Understanding numpy.gradient
我有一个时间序列的电压值记录在 mV
中,每隔 0.02 ms
,存储为一个 numpy 数组。
如果我这样做,
dv_dt = np.gradient(v),
dv_dt
的单位是什么?它会是 V/s
的倍数吗?例如mV/s
、mV/(0.02 ms)
、等等?
我的理解是gradient
returns传给它的参数的导数。是吗?
看到这个related question。
注意dt的单位间距。如 documentation 中所述,除非您通过 vararg
参数提供样本距离,否则 gradient
假定单位间距为 1。只有在所有数据点 dt = 1
的情况下,您的情况才是正确的。
你必须自己定义你的单位。可以使用毫秒,但除非你没有充分的理由,否则我会使用 SI 单位(在本例中为秒和伏特;与 mV 和 ms 相同)。渐变的单位为 mV/ms 或 V/s.
在你的情况下np.gradient(v,0.02)
会给你电压信号的一阶差分,用你的时间轴间距校正。
我有一个时间序列的电压值记录在 mV
中,每隔 0.02 ms
,存储为一个 numpy 数组。
如果我这样做,
dv_dt = np.gradient(v),
dv_dt
的单位是什么?它会是 V/s
的倍数吗?例如mV/s
、mV/(0.02 ms)
、等等?
我的理解是gradient
returns传给它的参数的导数。是吗?
看到这个related question。
注意dt的单位间距。如 documentation 中所述,除非您通过 vararg
参数提供样本距离,否则 gradient
假定单位间距为 1。只有在所有数据点 dt = 1
的情况下,您的情况才是正确的。
你必须自己定义你的单位。可以使用毫秒,但除非你没有充分的理由,否则我会使用 SI 单位(在本例中为秒和伏特;与 mV 和 ms 相同)。渐变的单位为 mV/ms 或 V/s.
在你的情况下np.gradient(v,0.02)
会给你电压信号的一阶差分,用你的时间轴间距校正。