04 数据操作+数据预处理

在这里插入图片描述

  • 0维数组–即标量,如一个浮点数,表示物体的类别
  • 1维数组–即向量,如一个特征向量
  • 2维数组–即矩阵,如一个样本的所有特征

在这里插入图片描述

  • 3维数组,如RGB图片(宽x高x通道
  • 4维数组,如批量的RGB图片(批量大小 x 宽x高x通道)如1个batch
  • 5维数组,如批量的视频(批量大小x 时间 x 宽x高x通道
    在这里插入图片描述
  • 创建数组需要指定【形状(如3x4)、数据类型(如浮点数)、数据值(如全0/1/随机数)】
    在这里插入图片描述
    类似于切片功能

2.2.1创建数据

import os

os.makedirs(os.path.join('..','data'),exist_ok=True)
data_file = os.path.join('..','data','hose_tiny.csv')

with open(data_file, 'w') as f:
    f.write('NumRooms,City,Price\n')
    f.write('3,shantou,200\n')
    f.write('2,NA,100\n')
    f.write('NA,shandong,150\n')
    f.write('4,NA,88.8\n')

2.2.2读取数据

import pandas as pd
df = pd.read_csv(data_file)
df.head()

在这里插入图片描述

2.2.3 缺失数据处理

# 缺失数据的处理
inputs,outputs = df.iloc[:,0:2],df.iloc[:,2] # 前两列,最后一列
print(inputs)
inputs = inputs.fillna(inputs.mean())  #均值填充
inputs

在这里插入图片描述

数值列的NAN值已被均值填充 非数值列的NAN值不会被填充,故将该列的NAN单独视为一个列

inputs = pd.get_dummies(inputs, dummy_na=True) # 对inputs中的类别值和离散值,将'NaN'视为一个类别
print(inputs)

在这里插入图片描述

2.2.4 转换张量格式

# 以上将数据都转为数值形式,可以进行tensor张量的转换
import torch
X, y = torch.tensor(inputs.values),torch.tensor(outputs.values)
X, y

在这里插入图片描述


版权声明:本文为sinat_29950703原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。