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