使用pandas软件包预处理原始数据。
2.2 数据预处理
2.1.1 读取数据集
- 将数据集按行写入CSV文件中
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:
f.write('NumRooms, Alley, Pricie\n')
f.writer('NA, Pave, 127500\n')
f.write('2, NA, 106000\n')
f.write('4, NA, 178100\n')
f.write('NA, NA, 140000\n')
- 从CSV文件中加载数据集
import pandas as pd
data = pd.read_csv(data_file)
print(data)
2.2.2 处理缺失值
- 处理缺失值(NaN)的方法包括:插值法(用一个替代值弥补缺失值)和删除法(直接忽略缺失值)
//使用同一列的均值替换缺失值(NaN)
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
inputs = inputs.fillna(inputs.mean())
print(inputs)
- 使用pd.get_dummies()函数将存在缺失值的列转换为两列
inputs = pd.get_dummies(inputs, dummy_na = True)
print(inputs)
2.2.3 转换为张量格式
使用torch.tensor()将数值类型转换为张量格式
import torch
X, y = torch.tensor(inputs.values), torch.tensor(outputs.values)