python - 根据第一个元素的状态清除行

标签 python pandas list numpy matrix

有一个 3d 数组:

输入:

    [[[0,2,3,4]
    [4,2,3,4]
    [6,2,3,4]]
    [[2,2,3,4]
    [3,2,3,4]
    [2,2,3,4]]]

如何使 numpy 数组看起来像这样?

rule: if array[:,:,0] < 3

输出:

    [[[0,0,0,0]
    [4,2,3,4]
    [6,2,3,4]]
    [[0,0,0,0]
    [0,0,0,0]
    [0,0,0,0]]]

最佳答案

这是一种方法:

a[a[:,: ,0] <= 3, :] = 0
输出:
array([[[0, 0, 0, 0],
        [4, 2, 3, 4],
        [6, 2, 3, 4]],

       [[0, 0, 0, 0],
        [0, 0, 0, 0],
        [0, 0, 0, 0]]])

注意:我假设您想将值为 < 的行转为 0或=3 。如果需要,更改条件。

关于python - 根据第一个元素的状态清除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68324974/

相关文章:

python - 为什么 python shebang 不接受三个以上的参数?

python - Pandas:合并重复的索引值

android - ListView 上的按钮我想使用 button.setonclicklistener 和 onListItemClick 我需要做什么

python - 使用 python 使用 youtube-dl 下载时更改输出名称

python - 我可以将标准输出重定向到某种字符串缓冲区吗?

python - 从文本列中提取两列的配给。

python - matplotlib 中的多进程绘图

Python - 切片列表列表

list - Haskell 声明空列表,但实际上哪个不是空的?

c# - 如何等待操作完成?