【发布时间】:2017-11-22 21:54:20
【问题描述】:
我有一个包含多个对象的时间间隔的字典,即实际上是一个二维数组,时间在 x 轴上,对象在 y 轴上。我也有相同的形状字典用于恒星通量值以适应那些时间,最后我有一个包含 Stellar ID 的字典,它是一个一维字符串数组。
除此之外,还有一个带有“FLAG”值的字典,如果是dic['FLAG'] != 0,则相应的通量和时间值将被丢弃。
使用time_new = (dic['time'][np.where(dic['FLAG'] == 0.)]) 似乎通过二维时间字典将每个接受的值附加到下一个的末尾,而不是简单地删除那些不合适的值并在整个二维数组形式中删除。
有人对如何解决此类问题有任何建议吗?非常感谢!
【问题讨论】:
-
使用
np.ma.MaskedArray,然后将.mask属性设置为dic['FLAG'] == 0. -
感谢您的回复!所以像 new_time = np.ma.MaskedArray(time, mask = dic['FLAG'] == 0.) ?
-
是的,至少如果所有后续操作都支持屏蔽数组:)
-
它似乎掩盖了几乎所有不寻常的数据,但我会继续挖掘,看看发生了什么,感谢您的帮助:)
标签: python dictionary time append 2d