gpt4 book ai didi

Python/Numpy 子数组选择

转载 作者:太空狗 更新时间:2023-10-29 21:28:53 25 4
gpt4 key购买 nike

我有一些正在尝试破译的 Numpy 代码。有一行 v1 = v1[:, a1.tolist()] 传递一个 numpy 数组 a1 并将其转换为列表。我对 v1[:, a1.tolist()] 的实际作用感到困惑。我知道 v1 现在被设置为从 v1 给出的列数组,由选择 [:, a1.tolist()] 但是什么被选中了?更准确地说,[:, a.tolist()] 在做什么?

最佳答案

如果将语法分成两部分,您观察到的语法会更容易理解:

1。使用列表作为索引

与numpy的含义

a[[1,2,3]]

[a[1], a[2], a[3]]

换句话说,使用列表作为索引就像创建一个使用元素作为索引的列表。

2。使用 [:,x]

选择列

意义

a2[:, x]

[a2[0][x],
a2[1][x],
a2[2][x],
...
a2[n-1][x]]

即正在从矩阵中选择一列。

总结

意义

a[:, [1, 3, 5]]

因此

[[a[ 0 ][1], a[ 0 ][3], a[ 0 ][5]],
[a[ 1 ][1], a[ 1 ][3], a[ 1 ][5]],
...
[a[n-1][1], a[n-1][3], a[n-1][5]]]

换句话说,a 的一个副本,带有选定的列(或复制和重新排序;索引列表中的元素不需要区分或排序)。

关于Python/Numpy 子数组选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27937163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com