【问题标题】:Deleting specific numbers from a (2,60) numpy array?从 (2,60) numpy 数组中删除特定数字?
【发布时间】:2021-07-03 20:04:01
【问题描述】:

我有一个形状为 (2,60) 的 numpy 数组。第一行中的某些数字超过 30,我想过滤第一行值小于 30 的列。

I tried array = array[array < 30] #but that doesn't work 

我的数组的一个例子是

array = np.array([[30,40,12,12,10,2,30,40],[2,5,75,67,89,5,3,4]]) 

预期输出:

array = [[12 12 10 2]
       [75 67 89 5]]

【问题讨论】:

  • 您的用例完全不清楚。你说你有一个 2D NumPy 数组,但你显示了两个不相关的列表。请从intro tour 重复how to ask
  • 如果从数组的第一行中删除的数字数量与第二行不同,您希望行为是什么?
  • @prune 也许我没有正确说明抱歉,我只是说我的二维数组有 x 和 y 数据点。抱歉英语不是我的母语
  • @duckboycool 我的 2D numpy 数组有 x 和 y 分量,我想去掉一些 x 数据点,但我想删除相应的 y 数据点
  • 这不仅仅是您没有正确说明它;您展示的唯一作品与您提供的数据不兼容。

标签: python arrays numpy


【解决方案1】:

你正在寻找这个:

array[:,array[0]<30]

输出:

array([[12, 12, 10,  2],
       [75, 67, 89,  5]])

【讨论】:

  • 是的!非常感谢!
猜你喜欢
  • 2021-03-01
  • 1970-01-01
  • 2022-01-21
  • 2022-01-25
  • 1970-01-01
  • 2021-01-28
  • 2019-04-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多