【发布时间】:2017-12-18 10:52:48
【问题描述】:
我有一些包含掩码元素的数组(来自Numpy.MaskedArray),例如
data = [0,1,masked,3,masked,5,...]
掩码不遵循常规模式。
我想遍历数组并简单地删除所有被屏蔽的元素以结束:
data = [0,1,3,5,...]
我试过这样的循环:
for i in xrange(len(data)):
if np.ma.is_masked(data[i]):
data.pop(i)
但我得到了错误:local variable 'data' referenced before assignment
我必须创建一个新数组并添加未屏蔽的元素吗?还是有一个MaskedArray 函数可以自动做到这一点?我看过文档,但对我来说并不明显。
谢谢!
【问题讨论】:
-
掩码到底是什么?你能提供一个minimal reproducible example吗?
-
您的错误与您的问题无关
-
[x for x in data if isinstance(x,(int))] ?
-
@JejeBelfort 这刚刚返回了原始列表