为了账号安全,请及时绑定邮箱和手机立即绑定

使用条件拆分二维 numpy 数组

使用条件拆分二维 numpy 数组

catspeake 2021-12-17 14:35:51
我想根据第 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 可能会被视为不等于零。


查看完整回答
反对 回复 2021-12-17
  • 1 回答
  • 0 关注
  • 202 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号