菜鸟初学第二周之kNN分类算法约会网站匹配

时间:20180716-20180722

Ubuntu14 + cuda8.0对应tensorflow1.2

def file2matrix  (filename):
    fr = open(filename)  # 打开文件名为filename的文件
    arrayOLines = fr.readline()  # 按行读取文本数据,自动生成一个列表。
    # 一次读取整个文本数据,并且自动将文件内容分析成一个行的列表,比readline()快
    # 后面的img2vector就是使用的readline(),因为要逐行逐个读取,可以对比一下
    # 每个样本数据占据一行
    numberOfLines = len(arrayOLines)  # 样本数据的个数
    returnMat = zeros((numberOfLines, 3))  # 创建一个矩阵numberOfline行3列
    classLabelvector = []
    index = 0
    for line in arrayOLines:  # 循环处理文件
        print(line)
        line = line.strip()  # 去掉回车符,pre(使上下的数据紧凑在一起),
        # 括号里面是之前不太对的理解,是去掉那个超级大的一行的列表中的回车符“\n” ,然后一行一行的处理,才得到所看到的上下的数据紧凑在一起的数据
        # 也就是说,不是一次就得到的,是迭代出来的,所显示的是最终迭代完成之后的结果print line很多
        # strip() 方法用于移除字p符串头尾指定的字符(默认为空格或换行符)或字符序列
        listFromLine = line.split('\t')  # python split()默认以空格分割成列表,split(\t)是按tab分割

        # 分成了4列数据,得到了4个列表

        returnMat[index, :] = listFromLine[0:3]  # 将数据前三列提取出来,存放到returnMat的NumPy矩阵中,也就是特征矩阵
        classLabelvector.append(int(listFromLine[-1]))  # 将不喜欢,极具魅力,一般魅力填到分类标签
        index += 1  # 继续迭代
    return returnMat, classLabelvector
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值