python - 根据单个单元格的条件从 numpy 数组中删除列

标签 python arrays numpy

最重要的是,抱歉我的英语不好。

我有这个数组t:

array([[ 0,  1,  2,  0,  4,  5,  6,  7,  8,  9],
       [ 0, 11,  0, 13,  0, 15,  0, 17, 18,  0]])

我想删除第二行值为空的列。在这里,我想删除第 0、2、4、6 和 9 列,以获得这个数组:

array([[  1,   0,   5,   7,  8 ],
       [ 11,  13,  15,  17, 18 ]])

我尝试使用 np.sum() 但没有成功。

最佳答案

类似于 Juh_,但表现力更强,并且避免了一些不必要的性能开销。总共 12 个高度 pythonic、明确和明确的字符。这真的是 numpy 101;如果您仍在尝试解决这个问题,您可以通过阅读 numpy 入门读物帮自己一个忙。

import numpy as np
a = np.array([[ 0,  1,  2,  0,  4,  5,  6,  7,  8,  9],
              [ 0, 11,  0, 13,  0, 15,  0, 17, 18,  0]])
print a[:,a[1]!=0]

关于python - 根据单个单元格的条件从 numpy 数组中删除列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21016684/

相关文章:

python - 如何在 python 中分块读取大图像?

python - Django Rest-framework 不会在调用之间存储经过身份验证的用户

python - 在 python3 中的数组对象旁边添加一些东西

c# - 在自定义对象的 List<> 上使用 ToArray()

python - 如何跨一维 numpy 数组中的元素获取众数

python - 在 Pandas 中设置多列索引

python - dask 可以用于在核心之外进行分组和重新编码吗?

python - AWS Sagemaker 无法适应 SKLearn 模型 : Access Denied when calling the CreateBucket operation

c++ - 使用数组和结构的四分卫评级函数表现得很奇怪

python - 高效返回数组中第一个满足条件的值的索引