就跟着代码的顺序说问题
先留一些我的数据,可以参考一下数据类型:
第一章 文件读取
%matplotlib inline
import numpy as np
import pandas as pd
import torch
from torch import nn
from d2l import torch as d2l
train_data = pd.read_csv("all_data.csv")
train_data.shape
#(198, 401)
因为我这个例子数据不多,就198条,所以就不专门设立验证集了,用K折交叉验证的方法来验证。
数据最后一列为标签,所以数据的特征列为400,共198条数据,先把训练数据和标签分开。
train_features = train_data.iloc[:,0:-1].values #0:-1 就是取data中的第0列开始倒数第一列结
#束,包括0列不包括倒数第一列
train_labels = train_data.iloc[:,400:]
print(train_features.shape)
print(train_labels.shape)
type(train_features)
#(198, 400)
#(198, 1)
#numpy.ndarray
可以看到训练数据和标签已经分开了,可以查看变量表看看分的是否是正确的,而且现在的数据格式为np.ndarray,到这里文件的读取就已经结束了。
第二章 数据预处理
首先需要对数据进行归一化操作,这个归一化的方法有好几种,看自己需求吧,我的这个归一化的方法是:对于每一个特征值x,(x-该列最小值)/(该列最大值-该列最小值)
def maxminnorm(array):
maxcols=array.max(axis=0)
mincols=array.min(axis=0)
data_shape = array.shape
data_rows = data_shape[0]
data_cols = data_shape[1]
t=np.empty((data_rows,data_c

最低0.47元/天 解锁文章
938

被折叠的 条评论
为什么被折叠?



