我正在使用时间序列的网格数据:
' 2014年1月1日'
0 1 1 0 0 1
0 1 1 0 1 1
1 1 1 0 0 1
0 1 0 0 0 1
0 1 1 0 1 1
' 2014年1月2日'
0 1 0 0 0 1
0 1 1 0 1 1
1 0 1 0 1 1
0 1 0 0 0 1
1 1 1 0 1 0
等 ...
我一直在使用3d numpy数组,但我不满意将第3维处理为datetime
个对象,并且可能希望使用pandas
时间序列。
在python
中使用这些数据是否有普遍接受的最佳做法?
更新:
我使用上面的1和0来使事情变得太乱,但我的数据是地理空间网格(WGS84 lon / lat)随时间变化的值(不同类型)。
我希望能够对整个网格上的日期范围内的数据或网格的某个切片(使用网格索引)执行计算。 pandas
时间序列很不错,因为您可以同时拥有datetime
个对象(.month
,.year
等方法)和datetime64
标量简单性(即data.date = 1995)。
答案 0 :(得分:1)
也许structured array(或记录数组)更适合您的需求:
例如,如果n
是您需要的条目数,并假设您的数字数组是布尔值:
n=1
np.zeros(n, dtype=[('date','|S10'),('data','b1',(5,6))])