【发布时间】:2020-07-25 02:05:30
【问题描述】:
为什么 a[:,[x]] 可以从数组创建列向量? [ ] 代表什么? 谁能给我解释一下原理?
a = np.random.randn(5,6)
a = a.astype(np.float32)
print(a)
c = torch.from_numpy(a[:,[1]])
[[-1.6919796 0.3160475 0.7606999 0.16881375 1.325092 0.71536326]
[ 1.217861 0.35804042 0.0285245 0.7097111 -2.1760604 0.992101 ]
[-1.6351479 0.6607222 0.9375339 0.5308735 -1.9699149 -2.002803 ]
[-1.1895325 1.1744579 -0.5980689 -0.8906375 -0.00494479 0.51751447]
[-1.7642071 0.4681248 1.3938268 -0.7519176 0.5987852 -0.5138923 ]]
###########################################
tensor([[0.3160],
[0.3580],
[0.6607],
[1.1745],
[0.4681]])
【问题讨论】:
-
见advanced indexing。您正在使用一个序列对象(在本例中为列表
[1]),它使高级索引规则适用。 -
[1]是一个包含 1 个元素的列表!不要跳过基本的 Python 学习。你从 (5,6) 开始,得到一个 (5,1) 数组,其中1是索引列表的长度。
标签: python numpy pytorch tensor