如何用时态数据计算积分?

时间:2018-04-16 19:42:09

标签: python dataframe math integral

我想计算离散信号段Y的积分(Y = [y1,y2,... y50]),X是以下datetime64 [ns]对象:

x=['2018-01-24T13:41:25.057000000' '2018-01-24T13:41:25.069000000'
 '2018-01-24T13:41:25.077000000' '2018-01-24T13:41:25.090000000'
 '2018-01-24T13:41:25.097000000' '2018-01-24T13:41:25.111000000'
 '2018-01-24T13:41:25.117000000' '2018-01-24T13:41:25.130000000'
 '2018-01-24T13:41:25.138000000' '2018-01-24T13:41:25.150000000'
 '2018-01-24T13:41:25.158000000' '2018-01-24T13:41:25.170000000'
 '2018-01-24T13:41:25.178000000' '2018-01-24T13:41:25.199000000'
 '2018-01-24T13:41:25.200000000' '2018-01-24T13:41:25.211000000'
 '2018-01-24T13:41:25.218000000' '2018-01-24T13:41:25.231000000'
 '2018-01-24T13:41:25.238000000' '2018-01-24T13:41:25.250000000'
 '2018-01-24T13:41:25.258000000' '2018-01-24T13:41:25.269000000'
 '2018-01-24T13:41:25.278000000' '2018-01-24T13:41:25.290000000'
 '2018-01-24T13:41:25.298000000' '2018-01-24T13:41:25.311000000'
 '2018-01-24T13:41:25.317000000' '2018-01-24T13:41:25.331000000'
 '2018-01-24T13:41:25.338000000' '2018-01-24T13:41:25.350000000'
 '2018-01-24T13:41:25.358000000' '2018-01-24T13:41:25.370000000'
 '2018-01-24T13:41:25.378000000' '2018-01-24T13:41:25.390000000'
 '2018-01-24T13:41:25.398000000' '2018-01-24T13:41:25.411000000'
 '2018-01-24T13:41:25.418000000' '2018-01-24T13:41:25.430000000'
 '2018-01-24T13:41:25.437000000' '2018-01-24T13:41:25.450000000'
 '2018-01-24T13:41:25.469000000' '2018-01-24T13:41:25.469000000'
 '2018-01-24T13:41:25.479000000' '2018-01-24T13:41:25.493000000'
 '2018-01-24T13:41:25.502000000' '2018-01-24T13:41:25.510000000'
 '2018-01-24T13:41:25.517000000' '2018-01-24T13:41:25.530000000'
 '2018-01-24T13:41:25.537000000' '2018-01-24T13:41:25.550000000']

我的尝试是使用以下python代码:

案例A,上面是x:

f_x_tot_acc = Y
x_n = x[-1]
x_0 = x[0]
h = (x_n - x_0) / (len(f_x_tot_acc) - 1)
print('trapz [' + str(integrate.trapz(f_x_tot_acc, dx=h)) + ']')

结果是:trapz [6203255447 nanoseconds]

案例B,

x = range(0,50)
f_x_tot_acc = Y 
x_n = x[-1]
x_0 = x[0]
h = (x_n - x_0) / (len(f_x_tot_acc) - 1)
print('trapz [' + str(integrate.trapz(f_x_tot_acc, dx=h)) + ']')

结果是:trapz [616.5507767408332]。

哪个是正确的?

非常感谢, 最好的祝福, 卡罗

0 个答案:

没有答案