ndarray
-
运行本节中的代码。将本节中的条件语句
X == Y
更改为X < Y
或X > Y
,然后看看你可以得到什么样的张量。X = torch.arange(12, dtype=torch.float32).reshape((3,4)) Y = torch.tensor([[2.0, 1, 4, 3], [1, 2, 3, 4], [4, 3, 2, 1]])
X > Y Out[3]: tensor([[False, False, False, False], [ True, True, True, True], [ True, True, True, True]]) X < Y Out[4]: tensor([[ True, False, True, False], [False, False, False, False], [False, False, False, False]])
-
用其他形状(例如三维张量)替换广播机制中按元素操作的两个张量。结果是否与预期相同
X=torch.tensor([[[1,2,3],[4,5,6]]]) Y=torch.tensor([[[7,8,9]],[[10,11,12]]]) C=X+Y C.shape
运行结果
torch.Size([2, 2, 3])
pandas
创建包含更多行和列的原始数据集。
- 删除缺失值最多的列。
- 将预处理后的数据集转换为张量格式。
import pandas as pd
import torch
data_file = r'D:\d2l-zh\pytorch\data\house_tiny.csv'
data = pd.read_csv(data_file)
count = 0
count_max = 0
names = ['NumRooms', 'Alley', 'Price']
flag=''
for name in names:
count = data[name].isna().sum()
if count > count_max:
count_max=count
flag=name
data=data.drop([flag],axis=1)
a=torch.tensor(data.values)
print(a)