Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 基于其他阵列的条件从现有阵列创建阵列_Python_Arrays_Conditional Statements - Fatal编程技术网

Python 基于其他阵列的条件从现有阵列创建阵列

Python 基于其他阵列的条件从现有阵列创建阵列,python,arrays,conditional-statements,Python,Arrays,Conditional Statements,itmpath是一个包含719255(整数值)的列表。 Pt是一个带有浮点64值的719255x1矩阵/数组。 C是一个具有浮点64值的719255x1矩阵/数组 我想在Pt>C中提取索引值,然后使用这些索引值从itmpath中提取与这些索引值对应的值,然后将这些值存储在一个新数组中,称为expath。我已尝试使用以下代码: exPaths = itmPaths[index for index,value in enumerate(Pt-C) if value > 0] 在Mat

itmpath
是一个包含719255(整数值)的列表。
Pt
是一个带有浮点64值的719255x1矩阵/数组。
C
是一个具有浮点64值的719255x1矩阵/数组

我想在
Pt>C
中提取索引值,然后使用这些索引值从
itmpath
中提取与这些索引值对应的值,然后将这些值存储在一个新数组中,称为
expath
。我已尝试使用以下代码:

    exPaths = itmPaths[index for index,value in enumerate(Pt-C) if value > 0]
在Matlab中,我可以使用以下方法成功完成此操作:

    exPaths = itmPaths(Pt>C);

我想让代码尽可能的高效。谢谢。

使用列表理解,您可以做到这一点,但正如我不知道您所说的矩阵的确切结构一样,您可以调整,但压缩都允许跟踪索引(提取后面的值)和值(应用条件)


请分享aray的代码而不是文本来解释它们
exPaths = [itmPaths[idx] for idx, pc in enumerate(zip(Pt, C)) if pc[0] > pc[1]]