Python项目代码阅读【不断更新】

一.数据读取:
  #数据分割 val_files = np.array_split(list_files, self.n_folds)
  np.split() 均等分割,不均等会报错
  np.array_split() 不均等分割,不会报错
  
  #训练集和验证集 train_files = np.setdiff1d(list_files, val_files[self.fold_idx])
  setdiff1d(ar1, ar2, assume_unique=False) 在ar1中但不在ar2中的已排序唯一值。assume_unique表示如果有多个相同的值是否视为同一个。 

  #交叉验证 20折表示19份作为训练1份作为验证,轮20次,最后所有验证集平均结果作为评判性能指标
  https://blog.csdn.net/weixin_40475450/article/details/80578943

  #删除维度 tmp_data = np.squeeze(tmp_data) numpy.squeeze(a,axis = None)
    1)a表示输入的数组; 2)axis用于指定需要删除的维度,但是指定的维度必须为单维度,否则将会报错;
    3)axis的取值可为None 或 int 或 tuple of ints, 若axis为空,则删除所有单维度的条目;

  #加入新维度 tmp_data = tmp_data[:, :, np.newaxis, np.newaxis]
  np.newaxis 指定位置加入新维度,如x为5*5,x[np.newaxis, ..., np.newaxis, np.newaxis]后变成1*5*5*1*1

  #加载目录下的所有文件 allfiles = os.listdir(self.data_dir)
    返回该目录下所有文件名的list

  #数据水平拼接 np.hstack(label_train)
    np.vstack():在竖直方向上堆叠
    np.hstack():在水平方向上平铺


  #数据按列拼接 np.r_[x_train_data, x_temp]
    np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等。
    np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等。

  
#打乱数据顺序 np.random.shuffle(train_data)
  训练数据在训练之前一定要打乱顺序


  #五步加载数据
  https://blog.csdn.net/rainweic/article/details/95737315
allfiles = os.listdir(self.data_dir) 
原文地址:https://www.cnblogs.com/Amyheartxy/p/12560855.html