ndarray 的联合条件截断
joint conditional truncation for ndarray
给定一个二维 numpy 数组
array([[-1.00, 1.00 ],
[-2.00, 2.00 ],
[ 2.00, 3.00 ],
[ 1.00, 3.00 ],
[-4.00,-3.00]])
我希望检索均超过给定值的行。也就是说,假设所有值都大于或等于 1。这将是所需的输出。
array([[ 2.00, 3.00 ],
[ 1.00, 3.00 ]])
对于一维数组,可以像
一样直接完成
sample[sample >=1]
但是,它不适用于 dim > 1 的数组。上面的语法也适用于 pandas 数据帧,但我不想将所有内容都转换为数据帧以进行截断.
有什么优雅的方法吗?感谢您的帮助。
您可以使用 np.array.all(axis=1)
:
>>> sample[(sample >= 1).all(axis=1)]
array([[2., 3.],
[1., 3.]])
给定一个二维 numpy 数组
array([[-1.00, 1.00 ],
[-2.00, 2.00 ],
[ 2.00, 3.00 ],
[ 1.00, 3.00 ],
[-4.00,-3.00]])
我希望检索均超过给定值的行。也就是说,假设所有值都大于或等于 1。这将是所需的输出。
array([[ 2.00, 3.00 ],
[ 1.00, 3.00 ]])
对于一维数组,可以像
一样直接完成sample[sample >=1]
但是,它不适用于 dim > 1 的数组。上面的语法也适用于 pandas 数据帧,但我不想将所有内容都转换为数据帧以进行截断.
有什么优雅的方法吗?感谢您的帮助。
您可以使用 np.array.all(axis=1)
:
>>> sample[(sample >= 1).all(axis=1)]
array([[2., 3.],
[1., 3.]])