pytorch学习笔记

矩阵元素访问 - PyTorch

2019-08-12  本文已影响4人  Python爱好者123

程序代码:

import torch

# 创建4行5列的矩阵

x = torch.rand(4,5)

# 访问整个矩阵

print("访问整个矩阵:")

print("x =", x)

# 访问矩阵的某个元素

print("访问矩阵的某个元素:")

print("x[1,2] =", x[1,2]) # 行索引为1,列索引为2,元素

# 访问矩阵的某行元素.下面3种方式等价

print("访问矩阵的某行元素:")

print("x[1,:] =", x[1,:]) # 索引为1的行

print("x[1,] =", x[1,]) # 索引为1的行

print("x[1,:] =", x[1,:]) # 索引为1的行行

# 访问矩阵的某列元素

print("访问矩阵的某列元素:")

print("x[:,2] =", x[:,2]) # 列索引为2的元素

# 访问矩阵某行的部分元素

print("访问矩阵某行的部分元素:")

print("x[1,1:3] =", x[1,1:3]) # 行索引为1,列索引为1~2的元素

print("x[1,:3] =", x[1,:3]) # 行索引为1,列索引为3以前的元素

print("x[1,0:3:2] =", x[1,0:3:2]) # 行索引为1,列索引范围为0~2,步长为2,元素

# 访问矩阵某列的部分元素

print("访问矩阵某列的部分元素:")

print("x[1:3,2] =", x[1:3,2]) # 列索引为2,行索引为1~2的元素

print("x[:3,2] =", x[:3,2]) # 列索引为2,行索引为3以前的元素

print("x[0:3:2,2] =", x[0:3:2,2]) # 列索引为2,行索引范围为0~2,步长为2,元素

运行结果:

访问整个矩阵:

x = tensor([[0.6346, 0.1965, 0.0258, 0.5001, 0.4331],

[0.8978, 0.1385, 0.3910, 0.5054, 0.7850],

[0.9423, 0.5307, 0.5437, 0.4056, 0.9018],

[0.3200, 0.0712, 0.9848, 0.9798, 0.5561]])

访问矩阵的某个元素:

x[1,2] = tensor(0.3910)

访问矩阵的某行元素:

x[1,:] = tensor([0.8978, 0.1385, 0.3910, 0.5054, 0.7850])

x[1,] = tensor([0.8978, 0.1385, 0.3910, 0.5054, 0.7850])

x[1] = tensor([0.8978, 0.1385, 0.3910, 0.5054, 0.7850])

访问矩阵的某列元素:

x[:,2] = tensor([0.0258, 0.3910, 0.5437, 0.9848])

访问矩阵某行的部分元素:

x[1,1:3] = tensor([0.1385, 0.3910])

x[1,:3] = tensor([0.8978, 0.1385, 0.3910])

x[1,0:3:2] = tensor([0.8978, 0.3910])

访问矩阵某列的部分元素:

x[1:3,2] = tensor([0.3910, 0.5437])

x[:3,2] = tensor([0.0258, 0.3910, 0.5437])

x[0:3:2,2] = tensor([0.0258, 0.5437])

上一篇下一篇

猜你喜欢

热点阅读