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

2024-04-26 13:36:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我想计算离散信号段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纳秒]

案例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]。你知道吗

哪个是正确的?你知道吗

非常感谢, 致以最诚挚的问候, 卡罗


Tags: len信号案例accintegrateprintnsstr