Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 减去两个时间戳数组_Python_Arrays_Numpy - Fatal编程技术网

Python 减去两个时间戳数组

Python 减去两个时间戳数组,python,arrays,numpy,Python,Arrays,Numpy,我创建了两个numpy数组,其中包含许多时间戳。时间戳是月、日、年、小时、秒格式(例如12/8/2009 10:00),我希望使用它们来计算速度。我的速度函数快完成了,我只是不知道如何减去两个数组来找出它们之间的差异。我试着用np.subtract def speedofelephant(lat1, long1, time1, lat2, long2, time2): distance = haversine_distance(lat1, long1, lat2, long2) # m

我创建了两个numpy数组,其中包含许多时间戳。时间戳是月、日、年、小时、秒格式(例如12/8/2009 10:00),我希望使用它们来计算速度。我的速度函数快完成了,我只是不知道如何减去两个数组来找出它们之间的差异。我试着用np.subtract

def speedofelephant(lat1, long1, time1, lat2, long2, time2):
    distance = haversine_distance(lat1, long1, lat2, long2)  # meter

    delta_time = np.subtract(time1,time2)

    print delta_time

    # set speed
    speed = (distance / delta_time) # speed in m/s
    speed = speed * 3.6 # speed in km/h
但是我得到了这个错误

NotImplemented

Traceback (most recent call last):
  File "C:/script.py", line 187, in <module>
    speed=speedofelephant(lat1, long1, time1, lat2, long2, time2)
  File "C:/script.py", line 182, in speedofelephant
    speed = (distance / delta_time) # speed in m/s
TypeError: unsupported operand type(s) for /: 'float' and 'NotImplementedType'
未实现
回溯(最近一次呼叫最后一次):
文件“C:/script.py”,第187行,在
速度=speedofelephant(lat1,long1,time1,lat2,long2,time2)
文件“C:/script.py”,第182行,以speedofelephant为单位
速度=(距离/增量时间)#速度(m/s)
TypeError:/:“float”和“NotImplementedType”的操作数类型不受支持

有什么建议吗?

如果是大多数日期时间格式,只需使用
delta=time1-time2

使用
dateutil.parser
解析到
datetime.datetime
对象


编辑:减去日期时间会得到时间增量。您需要将其转换为秒,因此请使用
delta.totalseconds()

问题是,当我使用delta=time1时-time2是我得到此错误回溯(最近一次调用最后一次):文件“-----”,第187行,速度=speedofelephant(lat1,long1,time1,lat2,long2,time2)文件“------------”,第177行,以speedofelephant delta_time=time1-time2类型错误:不支持的操作数类型对于-:'numpy.ndarray'和'numpy.ndarray'啊。这是因为你的减法numpy数组。我对数据类型感到困惑。它们的长度和形状都相同吗?我认为应该是
(n_行中都有,)
对不起,我对python还是相当陌生,我该如何理解它们的长度和形状?如果这是你的意思,那么每个数组中都有等量的时间戳?len(arr)和arr.shape>>>len(time1)1217>>>len(time2)1217>>time1.shape(1217,)>>time2.shape(1217,)