Python 使用条件拆分二维numpy数组
我想根据第13行中的值拆分二维数组。 输入是一个2D Numpy数组,但我不知道如何创建数组作为输出,因为np.append给了我元组。 (例如,我可以不在其上使用np.median)Python 使用条件拆分二维numpy数组,python,arrays,numpy,tuples,Python,Arrays,Numpy,Tuples,我想根据第13行中的值拆分二维数组。 输入是一个2D Numpy数组,但我不知道如何创建数组作为输出,因为np.append给了我元组。 (例如,我可以不在其上使用np.median) 上面代码的矢量化版本 import numpy as np E = D[np.isclose(D[:,13], 0)].ravel().tolist() F = D[~np.isclose(D[:,13], 0)].ravel().tolist() 在处理浮点数时,最好使用几乎相等的比较,因为在某些情况下(由于
上面代码的矢量化版本
import numpy as np
E = D[np.isclose(D[:,13], 0)].ravel().tolist()
F = D[~np.isclose(D[:,13], 0)].ravel().tolist()
在处理浮点数时,最好使用几乎相等的比较,因为在某些情况下(由于内存中的数字表示错误),例如1.0e-20可能被视为不等于零。这仍然有一个元组作为输出。我怎样才能让它再次创建2D数组呢?只要不应用
.ravel
和.tolist
,只留下:D[np.isclose(D[:,13],0)]np.append
与列表append方法完全不同。不要试图使用它。
import numpy as np
E = D[np.isclose(D[:,13], 0)].ravel().tolist()
F = D[~np.isclose(D[:,13], 0)].ravel().tolist()