当前位置: 首页 > 知识库问答 >
问题:

Pythonic方式获取索引,列为值==1

曾新立
2023-03-14

我目前有一个MxN数据帧,其中包含一个优化问题的解决方案。{M}对中的i的“活动”i、j和{N}对中的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.

编辑:解释不清楚编辑2:我的解释仍然不清楚

共有1个答案

尉迟远
2023-03-14
>>> 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]])
 类似资料:
  • 问题内容: 我每天都越来越喜欢python。 今天,我正在编写一些代码,例如: 我必须做N次。但是每次都不依赖于(索引变量)的值。我意识到自己正在创建一个从未使用过的变量(),并且我想:“当然,还有一种更Python化的方式来执行此操作,而无需该无用的索引变量。” 所以…问题是:您知道如何以更(pythonic)漂亮的方式完成此简单任务吗? 问题答案: 比循环快一点的方法是:

  • 问题内容: 是否可以获得与特定模式匹配的索引列表,例如 这是获取索引列表的方法: 但是我找不到过滤它们的方法,因此该列表仅包含匹配“ my_index_nr_1 ”的索引,其中“ ”是通配符 解 在使用ES一段时间后,这里是我现在使用的东西,希望它能对其他人有所帮助: 您也可以在末尾添加,以得到结果中每一列的标题。 问题答案: 使用_aliases命令有一个巧妙的技巧,当与通配符结合使用时(下面)

  • 当我试图找到这个答案时,我可能使用了糟糕的搜索词。现在,在索引DataFrame之前,我以这种方式在列中获得一个值列表... …然后我将在列上设置索引。这似乎是浪费的一步。在索引上尝试上述操作时,我得到一个键错误。 如何获取索引中的值(单个和多个)并将其放入列表或元组列表中?

  • 问题内容: 我正在尝试在字典列表中获取具有最大值的字典的索引,如下所示: 使用以下代码,我可以采用最大大小: 现在如何获取其索引?有没有简单的方法? 测试: 我只是想我可以做到这一点: 这个对吗? 问题答案: 告诉如何计算索引序列的最大值: 这将返回键最高的索引: 如果您一直想要该词典,则可以使用: 并同时获取索引 和 字典,可以在这里使用: 更多演示: 该函数依次传递给输入序列中的每个元素,并将

  • 本文向大家介绍Python 从列表中取值和取索引的方法,包括了Python 从列表中取值和取索引的方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: 建议大家多多尝试哦 下面介绍以下del删除 以上这篇Python 从列表中取值和取索引的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 问题内容: 我有一段代码应该在其中创建总机。我想返回所有打开的开关的列表。这里的“开”等于和“关”等于。因此,现在我只想返回所有值及其位置的列表。这就是我所拥有的,但它只返回第一次出现的位置(这只是我的代码的一部分): 这只会返回“ 4” 问题答案: 使用,返回找到的第一个匹配项的索引。 对于庞大的列表,最好使用: