我想根据第 13 行中的值拆分一个 2D 数组。输入是一个 2D Numpy 数组,但我无法弄清楚如何创建数组作为输出,因为 np.append 给了我 tupels。(所以我可以例如不使用 np.median )import numpy as npD = np.load('train_data.npy')E = []F = []for i, item in enumerate(D): if D[i][13]==0: np.append(E,item) else: np.append(F,item)threshold=np.median(E[:, 7])#Throws error, because E is a now tuple. It works on D.
1 回答

呼啦一阵风
TA贡献1802条经验 获得超6个赞
上面代码的矢量化版本。
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 可能会被视为不等于零。
添加回答
举报
0/150
提交
取消