python realted博客收藏
记录一些在看代码时遇到的一些问题及博客,方便以后忘记时回来
知乎收藏夹:
csdn收藏夹:
模型save and load:
命令行参数:
cuda版本:
Python装饰器:
Thread:
argparse:
Numpy 切片:
From ChatGPT:
在 Pi[:, [1, 2, 0]]
中,方括号 []
表示一个数组(或列表),其元素是要选择的列的索引。这是 NumPy 中常用的一种高级索引方法,允许你指定想要选择的多个列或行,并按照你指定的顺序进行排列。
高级索引的解释
在 NumPy 中,有两种索引方式:基本索引和高级索引。基本索引类似于 Python 的切片操作,如 Pi[:, 1]
,选择所有行的第1列。高级索引则更为灵活,它允许使用数组(或列表)来指定索引的集合,并且可以改变元素的顺序。
具体来说:
Pi[:, 1]
会选择数组Pi
的所有行的第1列,返回一个一维数组。Pi[:, [1, 2]]
会选择数组Pi
的所有行的第1列和第2列,返回一个二维数组,其中包含这两列的数据。Pi[:, [1, 2, 0]]
不仅选择了特定的列,还按照1, 2, 0
的顺序重新排列这些列。这个列表[1, 2, 0]
指定了新的列顺序。
举例说明
假设你有一个二维数组:
1 | array = np.array([ |
使用 array[:, [2, 0, 1]]
,我们期望得到一个新的数组,其中列的顺序重新排列为 [2, 0, 1]
,即:
1 | array[:, [2, 0, 1]] |
在这个操作中:
2
表示选择原数组的第2列(第三列)。0
表示选择原数组的第0列(第一列)。1
表示选择原数组的第1列(第二列)。
最终生成的数组 array[:, [2, 0, 1]]
的列顺序就变成了 [3, 1, 2]
,[6, 4, 5]
,和 [9, 7, 8]
。
通过这种方式,你可以非常灵活地选择和重新排列数组中的行或列。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.