【问题描述】
机器学习中,常需要处理输入数据为矩阵的txt文档,形如:
1 3 3
-1 1 1
1 4 3
一行表示一个样本<Yi, Xi >,Xi为D维向量,i=1,2,...N,Yi取值{+1,-1}。其中,不同样本间用换行隔开;第一列表示数据标签Yi,后面几列表示数据的各维度取值Xi。
需要实现程序,将txt中的文件读取到数组X和Y中,其中X为N*D维数组,Y为N维数组。
【主要知识点】
文件读取、getline、peek
【问题实现】
主要步骤:
获取行数N
获取列数,-1得到数据的维度D
读入数据
1、获取行数
获取行数时,需要快速找到每行的末尾'\n',计数器+1,可直接用getline(fileStream,tmp,'\n'))
// ================= Funtion: getFileRows ======================================
// =========== output :行数 ===============================&#