数据操作 & 数据预处理

基础操作

# 注意import的是torch
import torch

x = torch.arange(12)
print(x) # 输出是tensor([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])

x.shape # 输出是torch.Size([12])

# number of element
x.numel() # 输出是12

四则运算

# 创建tensor
a = torch.rand(5, 5)
b = torch.rand(5, 5)

# 加法
a + b
torch.add(a, b)
a.add_(b)

# 减法
a - b
torch.sub(a, b)
a.sub_(b)

# 乘法
a * b
torch.mul(a, b)
a.mul_(b)

# 除法
a / b
torch.div(a, b)
a.div_(b)

数据预处理

import os

# 创建人工数据集
os.makedirs(os.path.join('..', 'data'), exist_ok=True)
data_file = os.path.join('..', 'data', 'house_tiny.csv')

with open(data_file, 'w') as f:
  # col name
  f.write('num_room,alley,price\n')

  # 每行表示一个data sample
  f.write('NA,pave, 127500\n')

  # samples
  f.write('2,NA,106000\n')
  f.write('4,NA,178100\n')
  f.write('NA,NA,140000\n')

# 读取csv
df = pd.read_csv(data_file)

 

inputs, outputs = df.iloc[:, 0:2], df.iloc[:, 2]

# deal with Numeric NA data (mean)
inputs = inputs.fillna(inputs.mean())

# dummy
inputs = pd.get_dummies(inputs, dummy_na=True)

# 已解决空值问题, 并把numeric及category数据转为数值

# to be the tensor format
x = torch.tensor(inputs.values)
y = torch.tensor(outputs.values)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值