查找元素在矩阵中的位置

时间:2018-10-09 05:58:29

标签: python numpy

我有一个清单清单。我想在一个特定的列col中找到字符串“ 1”的位置:

from numpy import transpose
col = 0
lists = [["0", "0", "N"], ["1", "0", "N"], ["N", "N", "N"]]
pos = transpose(lists)[col].index("1")

但是我得到了错误:

AttributeError: 'numpy.ndarray' object has no attribute 'index'

以某种方式从numpy导入转置使我无法使用index()。我们如何轻松做到这一点?

1 个答案:

答案 0 :(得分:0)

使用np.transpose会将您的本地list转换为np.array,这就是您收到错误消息的原因。

使用numpy:

np.where(np.array(lists)[:,0]=="1")

使用本地列表:

list(zip(*lists))[0].index("1")

list(zip(*lists))是一种自然的移调方式...