编程语言
首页 > 编程语言> > python – 时变数据:元组列表与2D数组?

python – 时变数据:元组列表与2D数组?

作者:互联网

我的示例代码是在python中,但我问的是一般原则.

如果我有一组时间 – 值对数据,我应该将它们存储为2D数组还是元组列表?例如,如果我有这些数据:

v=[1,4,4,4,23,4]
t=[1,2,3,4,5,6]

这样存储通常更好:

data=[v,t]

或者作为元组列表:

data=[(1,1),(4,2)(4,3)...]

有这种“标准”方式吗?

解决方法:

聚合数组容器可能是最佳选择.假设您的时间点不是有规律的间隔(因此您需要跟踪它而不是仅使用索引),这允许您获取整个数据集的切片,如:

import numpy as np
v=[1,4,4,4,23,4]
t=[1,2,3,4,5,6]

data = np.array([v,t])

然后,您可以对其进行切片以轻松获取数据的子集:

data[:,2:4]  #array([[4, 4],[3, 4]])

ii = [1,2,5] # Fancy indexing
data[:,ii] # array([[4, 4, 4],
           #        [2, 3, 6]])

标签:python,scientific-computing
来源: https://codeday.me/bug/20190730/1578929.html