我目前有一个 MxN 数据框,其中包含优化问题的解决方案。 {M} 中的 i 和 {N} 对中的“事件”i,j 由 1 表示,“非事件”对由 0 表示。我需要确定所有事件单元格的 i,j 值,希望避免 for 循环索引或列。
这是一个例子:
In [73]: sol_df
Out[73]:
1 2 3 4 5
1 0 0 1 0 0
2 1 0 0 0 0
3 0 1 0 0 0
4 0 0 0 0 0
在这种情况下,我需要的是一个成对列表(元组就可以):
[(1,3), (2,1), (3,2)]
有办法吗?
谢谢!
A.
编辑:解释不清楚 EDIT2:我的解释仍然不清楚
请您参考如下方法:
>>> import numpy
>>> a = numpy.array([[1, 0, 1], [0, 1, 1], [0, 1, 0]])
>>> numpy.transpose(numpy.nonzero(a))
array([[0, 0],
[0, 2],
[1, 1],
[1, 2],
[2, 1]])
